Hi
There was no specualtion in the previous post, and there's no ARM processor either

I've spent the last couple of weeks disassembling that rom image and can tell you that for certain. The standalone player uses the ARM to handle the user interface and there aint one in the H943 (not in mine at least !).
You're right in that the 8051 does not directly handle the SATA interface, instead it loads the offset into DRAM of the data to be sent into custom hardware and that takes care of transmission to the host. Consider the INQUIRY CMD , the handler is at offset 0xe1dd. Right at the end of the function the DMA controller is setup:
mov r6,#4 ; e220 7e 04 r6 = 0x04
mov r7,a ; e222 ff r7 = 0x00
lcall Xcf9d ; e223 12 cf 9d
Xe226: ret ; e226 22 return
Examining the startup code we see that the following table (an INQUIRY response by the looks) is copied to DRAM at offset 0x400 from ROM offset 0x20b4
0x05, Peripheral Data Type = 5 C/DVD
0x80, Removable Media Bit = 1
0x00, ISO Ver = 0 ECMA Ver = 0 ANSI Ver = 0
0x32, ATAPI Ver = 3 Response Data Format = 2*
0x5B, Additional Length (total = 0x60)
0x00, Reserved
0x00, Reserved
0x00, Reserved
"TSSTCorp" Vendor ID
"DVD-ROM TS-H943A" Product ID
"ms25" Product Revision Level
0x20, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, Vendor Specific
0x00, Major Version
0x00, Minor Version
0x16, 0x00, 0x03, 0xA0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00 Vendor Specific params
NOTE:
*Data Format should be 1, but before anyone gets too excited I've already tried reflashing the H-943 with the Response Data Format = 1 and Windows didn't recognise it
