mirror of https://github.com/wwarthen/RomWBW.git
23 changed files with 341 additions and 127 deletions
@ -1,15 +1,39 @@ |
|||||
; Generated File -- not to be modify directly |
; Generated File -- not to be modify directly |
||||
|
#IF (!CHNATIVEEZ80) |
||||
#include "ch376-native/base-drv/ch376.c.s" |
#include "ch376-native/base-drv/ch376.c.s" |
||||
|
#ENDIF |
||||
#include "ch376-native/base-drv/ch376_init.c.s" |
#include "ch376-native/base-drv/ch376_init.c.s" |
||||
|
#IF (!CHNATIVEEZ80) |
||||
#include "ch376-native/base-drv/class_hub.c.s" |
#include "ch376-native/base-drv/class_hub.c.s" |
||||
|
#ENDIF |
||||
|
#IF (!CHNATIVEEZ80) |
||||
#include "ch376-native/base-drv/critical-section.c.s" |
#include "ch376-native/base-drv/critical-section.c.s" |
||||
|
#ENDIF |
||||
|
#IF (!CHNATIVEEZ80) |
||||
#include "ch376-native/base-drv/dev_transfers.c.s" |
#include "ch376-native/base-drv/dev_transfers.c.s" |
||||
|
#ENDIF |
||||
|
#IF (!CHNATIVEEZ80) |
||||
#include "ch376-native/base-drv/enumerate.c.s" |
#include "ch376-native/base-drv/enumerate.c.s" |
||||
|
#ENDIF |
||||
|
#IF (!CHNATIVEEZ80) |
||||
#include "ch376-native/base-drv/enumerate_hub.c.s" |
#include "ch376-native/base-drv/enumerate_hub.c.s" |
||||
|
#ENDIF |
||||
|
#IF (!CHNATIVEEZ80) |
||||
#include "ch376-native/base-drv/enumerate_storage.c.s" |
#include "ch376-native/base-drv/enumerate_storage.c.s" |
||||
|
#ENDIF |
||||
#include "ch376-native/base-drv/hbios-driver-storage.c.s" |
#include "ch376-native/base-drv/hbios-driver-storage.c.s" |
||||
|
#IF (!CHNATIVEEZ80) |
||||
#include "ch376-native/base-drv/protocol.c.s" |
#include "ch376-native/base-drv/protocol.c.s" |
||||
|
#ENDIF |
||||
|
#IF (!CHNATIVEEZ80) |
||||
#include "ch376-native/base-drv/transfers.c.s" |
#include "ch376-native/base-drv/transfers.c.s" |
||||
|
#ENDIF |
||||
|
#IF (!CHNATIVEEZ80) |
||||
#include "ch376-native/base-drv/usb-base-drv.c.s" |
#include "ch376-native/base-drv/usb-base-drv.c.s" |
||||
|
#ENDIF |
||||
|
#IF (!CHNATIVEEZ80) |
||||
#include "ch376-native/base-drv/usb_state.c.s" |
#include "ch376-native/base-drv/usb_state.c.s" |
||||
|
#ENDIF |
||||
|
#IF (!CHNATIVEEZ80) |
||||
#include "ch376-native/base-drv/work-area.c.s" |
#include "ch376-native/base-drv/work-area.c.s" |
||||
|
#ENDIF |
||||
|
|||||
@ -0,0 +1,91 @@ |
|||||
|
; delegate usb function to firmware of ez80 module |
||||
|
|
||||
|
; extern uint16_t usb_init(uint8_t state) __z88dk_fastcall; |
||||
|
_usb_init: |
||||
|
EZ80_EX_USB_INIT |
||||
|
RET |
||||
|
|
||||
|
; usb_error usb_scsi_seek(const uint16_t dev_index, const uint32_t lba) |
||||
|
_usb_scsi_seek: |
||||
|
; iy+2 : dev_index |
||||
|
; iy+4:5:6:7 : lba |
||||
|
LD IY, 0 |
||||
|
ADD IY, SP |
||||
|
EZ80_EXTN_IY_TO_MB_IY |
||||
|
|
||||
|
LD C, (IY+2) |
||||
|
LD_DE_IY_P_.L(4) ; LD.L DE, (IY+4) |
||||
|
LD L, (IY+7) |
||||
|
EZ80_EX_USB_STORAGE_SEEK |
||||
|
LD L, A |
||||
|
RET |
||||
|
|
||||
|
; usb_error usb_scsi_init(const uint16_t dev_index) |
||||
|
_usb_scsi_init: |
||||
|
LD IY, 0 |
||||
|
ADD IY, SP |
||||
|
|
||||
|
LD C, (IY+2) |
||||
|
EZ80_EX_USB_SCSI_INIT |
||||
|
LD L, A |
||||
|
RET |
||||
|
|
||||
|
; usb_error usb_scsi_read(const uint16_t dev_index, uint8_t *const buffer); |
||||
|
_usb_scsi_read: |
||||
|
LD IY, 0 |
||||
|
ADD IY, SP |
||||
|
|
||||
|
LD C, (IY+2) |
||||
|
LD E, (IY+4) |
||||
|
LD D, (IY+5) |
||||
|
EZ80_EXTN_DE_TO_MB_DE |
||||
|
EZ80_EX_USB_SCSI_READ |
||||
|
LD L, A |
||||
|
RET |
||||
|
|
||||
|
; usb_error usb_scsi_write(const uint16_t dev_index, uint8_t *const buffer) |
||||
|
_usb_scsi_write: |
||||
|
LD IY, 0 |
||||
|
ADD IY, SP |
||||
|
|
||||
|
LD C, (IY+2) |
||||
|
LD E, (IY+4) |
||||
|
LD D, (IY+5) |
||||
|
EZ80_EXTN_DE_TO_MB_DE |
||||
|
EZ80_EX_USB_SCSI_WRITE |
||||
|
LD L, A |
||||
|
RET |
||||
|
|
||||
|
; usb_error usb_scsi_read_capacity(const uint16_t dev_index, scsi_read_capacity_result *cap_result) |
||||
|
_usb_scsi_read_capacity: |
||||
|
LD IY, 0 |
||||
|
ADD IY, SP |
||||
|
|
||||
|
LD C, (IY+2) |
||||
|
LD E, (IY+4) |
||||
|
LD D, (IY+5) |
||||
|
EZ80_EXTN_DE_TO_MB_DE |
||||
|
EZ80_EX_USB_SCSI_READ_CAP |
||||
|
LD L, A |
||||
|
RET |
||||
|
|
||||
|
_usb_ufi_read: |
||||
|
_usb_ufi_write: |
||||
|
_usb_ufi_get_cap: |
||||
|
|
||||
|
_usb_kyb_flush: |
||||
|
_usb_kyb_report: |
||||
|
_usb_kyb_buf_get_next: |
||||
|
_usb_kyb_init: |
||||
|
RET |
||||
|
|
||||
|
;usb_device_type usb_get_device_type(const uint16_t dev_index) |
||||
|
_usb_get_device_type: |
||||
|
LD IY, 0 |
||||
|
ADD IY, SP |
||||
|
|
||||
|
LD C, (IY+2) |
||||
|
EZ80_EX_USB_GET_DEV_TYPE |
||||
|
LD L, A |
||||
|
RET |
||||
|
|
||||
@ -1,6 +1,14 @@ |
|||||
; Generated File -- not to be modify directly |
; Generated File -- not to be modify directly |
||||
|
#IF (!CHNATIVEEZ80) |
||||
#include "ch376-native/keyboard/class_hid.c.s" |
#include "ch376-native/keyboard/class_hid.c.s" |
||||
|
#ENDIF |
||||
|
#IF (!CHNATIVEEZ80) |
||||
#include "ch376-native/keyboard/class_hid_keyboard.c.s" |
#include "ch376-native/keyboard/class_hid_keyboard.c.s" |
||||
|
#ENDIF |
||||
#include "ch376-native/keyboard/kyb-init.c.s" |
#include "ch376-native/keyboard/kyb-init.c.s" |
||||
|
#IF (!CHNATIVEEZ80) |
||||
#include "ch376-native/keyboard/kyb_driver.c.s" |
#include "ch376-native/keyboard/kyb_driver.c.s" |
||||
|
#ENDIF |
||||
|
#IF (!CHNATIVEEZ80) |
||||
#include "ch376-native/source-doc/keyboard/kyb_driver.asm" |
#include "ch376-native/source-doc/keyboard/kyb_driver.asm" |
||||
|
#ENDIF |
||||
|
|||||
@ -1,4 +1,8 @@ |
|||||
; Generated File -- not to be modify directly |
; Generated File -- not to be modify directly |
||||
|
#IF (!CHNATIVEEZ80) |
||||
#include "ch376-native/scsi-drv/class_scsi.c.s" |
#include "ch376-native/scsi-drv/class_scsi.c.s" |
||||
|
#ENDIF |
||||
#include "ch376-native/scsi-drv/scsi-init.c.s" |
#include "ch376-native/scsi-drv/scsi-init.c.s" |
||||
|
#IF (!CHNATIVEEZ80) |
||||
#include "ch376-native/scsi-drv/scsi_driver.c.s" |
#include "ch376-native/scsi-drv/scsi_driver.c.s" |
||||
|
#ENDIF |
||||
|
|||||
@ -1,5 +1,11 @@ |
|||||
; Generated File -- not to be modify directly |
; Generated File -- not to be modify directly |
||||
|
#IF (!CHNATIVEEZ80) |
||||
#include "ch376-native/ufi-drv/class_ufi.c.s" |
#include "ch376-native/ufi-drv/class_ufi.c.s" |
||||
|
#ENDIF |
||||
#include "ch376-native/ufi-drv/ufi-init.c.s" |
#include "ch376-native/ufi-drv/ufi-init.c.s" |
||||
|
#IF (!CHNATIVEEZ80) |
||||
#include "ch376-native/ufi-drv/ufi_driver.c.s" |
#include "ch376-native/ufi-drv/ufi_driver.c.s" |
||||
|
#ENDIF |
||||
|
#IF (!CHNATIVEEZ80) |
||||
#include "ch376-native/ufi-drv/usb_cbi.c.s" |
#include "ch376-native/ufi-drv/usb_cbi.c.s" |
||||
|
#ENDIF |
||||
|
|||||
Loading…
Reference in new issue