There were two notable bugs: - the maple transfer/data sizes were not being set correctly - align_32byte always realigned the address of `_scene`, and not the `mem` parameter as expected. This had the effect of the maple-DMA send and receive buffers being the same buffer. On real hardware, this causes unpredicable behavior.
73 lines
2.4 KiB
CSV
73 lines
2.4 KiB
CSV
"name","issuing_right","command_code","data_size","data_field","data_field_size"
|
|
"device_request","host","0x01","0x00",,
|
|
,,,,,
|
|
"all_status_request","host","0x02","0x00",,
|
|
,,,,,
|
|
"device_reset","host","0x03","0x00",,
|
|
,,,,,
|
|
"device_kill","host","0x04","0x00",,
|
|
,,,,,
|
|
"device_status","peripheral","0x05","0x1c","device_id",16
|
|
"device_status",,,,"destination_code",1
|
|
"device_status",,,,"connection_direction",1
|
|
"device_status",,,,"product_name",30
|
|
"device_status",,,,"license",60
|
|
"device_status",,,,"low_consumption_standby_current",2
|
|
"device_status",,,,"maximum_current_consumption",2
|
|
,,,,,
|
|
"device_all_status","peripheral","0x06","0x1c+n/4","device_id",16
|
|
"device_all_status",,,,"destination_code",1
|
|
"device_all_status",,,,"connection_direction",1
|
|
"device_all_status",,,,"product_name",30
|
|
"device_all_status",,,,"license",60
|
|
"device_all_status",,,,"low_consumption_standby_current",2
|
|
"device_all_status",,,,"maximum_current_consumption",2
|
|
"device_all_status",,,,"free_device_status","n"
|
|
,,,,,
|
|
"device_reply","peripheral","0x07","0x00",,
|
|
,,,,,
|
|
"data_transfer","peripheral","0x08","0x01+n/4","function_type",4
|
|
"data_transfer",,,,"data","n"
|
|
,,,,,
|
|
"get_condition","host","0x09","0x01","function_type",4
|
|
,,,,,
|
|
"get_media_info","host","0x0a","0x02","function_type",4
|
|
"get_media_info",,,,"pt",4
|
|
,,,,,
|
|
"block_read","host","0x0b","0x02","function_type",4
|
|
"block_read",,,,"pt",1
|
|
"block_read",,,,"phase",1
|
|
"block_read",,,,"block_no",2
|
|
,,,,,
|
|
"block_write","host","0x0c","0x02+n/4","function_type",4
|
|
"block_write",,,,"pt",1
|
|
"block_write",,,,"phase",1
|
|
"block_write",,,,"block_no",2
|
|
"block_write",,,,"written_data","n"
|
|
,,,,,
|
|
"get_last_error","host","0x0d","0x02","function_type",4
|
|
"get_last_error",,,,"pt",1
|
|
"get_last_error",,,,"phase",1
|
|
"get_last_error",,,,"block_no",2
|
|
,,,,,
|
|
"set_condition","host","0x0e","0x01+n/4","function_type",4
|
|
"set_condition",,,,"write_in_data","n"
|
|
,,,,,
|
|
"ft4_control","host","0x0f","0x01+n/4","function_type",4
|
|
"ft4_control",,,,"ft4_data","n"
|
|
,,,,,
|
|
"ar_control","host","0x10","0x01+n/4","function_type",4
|
|
"ar_control",,,,"data","n"
|
|
,,,,,
|
|
"function_type_unknown","peripheral","0xfe","0x00",,
|
|
,,,,,
|
|
"command_unknown","peripheral","0xfd","0x00",,
|
|
,,,,,
|
|
"transmit_again","host, peripheral","0xfc","0x00",,
|
|
,,,,,
|
|
"file_error","peripheral","0xfb","0x01","function_error_code",4
|
|
,,,,,
|
|
"lcd_error","peripheral","0xfa","0x01","function_error_code",4
|
|
,,,,,
|
|
"ar_error","peripheral","0xf9","0x01","function_error_code",4
|