diff --git a/src/interrupts.s b/src/interrupts.s index 693ca6c..81a87fe 100644 --- a/src/interrupts.s +++ b/src/interrupts.s @@ -369,21 +369,85 @@ fs_init: fs_ioctl: rts +; ----------------------------------------------------------------------------- +; Read a number of raw sectors from the SD card. Arguments are passed in a data +; structure with the following layout: +; +; struct sector_read_s { +; uint32_t offset; +; uint16_t count; +; void *dest; +; }; +; +; Arguments: +; A: Bank of argument +; Y: Address of argument +; Return value: +; A: Error code +; X: Number of sectors actually read fs_sector_read: rts +; ----------------------------------------------------------------------------- +; Write a number of raw sectors to the SD card. Arguments are passed in a data +; structure with the following layout: +; +; struct sector_read_s { +; uint32_t offset; +; uint16_t count; +; void *src; +; }; +; +; Arguments: +; A: Bank of argument +; Y: Address of argument +; Return value: +; A: Error code +; X: Number of sectors actually written fs_sector_write: rts +; ----------------------------------------------------------------------------- +; Format the inserted SD card, removing any existing data. +; +; Arguments: +; A: Bank of volume label string +; Y: Address of volume label string +; Return value: +; A: Error code fs_mkfs: rts +; ----------------------------------------------------------------------------- +; Get the amount of free space (in bytes) on the filesystem. +; +; Arguments: None +; Return value: +; X: High-order 32 bits of free space +; Y: Low-order 32 bits of free space fs_free: rts +; ----------------------------------------------------------------------------- +; Get the volume label of the SD card. The string is written to a buffer owned +; by the caller. +; +; Arguments: +; A: Bank of volume label string +; Y: Address of volume label string +; Return value: +; A: Error code fs_get_label: rts +; ----------------------------------------------------------------------------- +; Set the volume label of the SD card. +; +; Arguments: +; A: Bank of volume label string +; Y: Address of volume label string +; Return value: +; A: Error code fs_set_label: rts