Hi Guys,
I am working on a project to get an old ZX Spectrum to work as a USB keyboard. I am using a Pro Micro and have it mostly working. When I plug it into a normal computer or a Raspberry PI it works perfectly. However, inside the Fuse emulator it doesn't work at all. Although if I bring up the menu using the function key on a "real" keyboard it does work then (ie. I can arrow around or select a letter for a menu item). When I used the Commodore 64 emulator Vice I could get a character to appear about 2% of the time.
I have used a USB sniffing program and it says that when I press an 'a' on a "real" keyboard I get:
Pipe Handle: 0x1232bf38 (Endpoint Address: 0x81)
Get 0x8 bytes from the device
00 00 04 00 00 00 00 00 ........
BUT the Arduino sends:
0
Pipe Handle: 0x12ba20b8 (Endpoint Address: 0x84)
Get 0x9 bytes from the device
02 00 00 04 00 00 00 00 00 .........
So the best I can guess at the moment that difference is the problem. What do others think? If it is the issue how can I fix it?
Thanks!