The DSP can do only digital-in. It has no analog-to-digital functionality itself. Digging up my NeXT Reference Manual moreover gives the following clues: Pin 4 of the DSP ("SCLK") -- to Nintendo Pin 2 ("clock") Pin 5 of the DSP ("RXD") -- to Nintendo Pin 4 ("data") Pin 6 of the DSP ("TXD") -- to Nintendo Pin 5 ("latch") Pin 11 of the DSP ("GND") -- to Nintendo Pin 1 ("Gnd") +5v to Nintendo Pin 7 Gnd to Nintendo Pin 1 For the folks who don't know the ordering of Nintendo pins, it is given in jfreem's library as: 1 7 2 6 3 5 4 (this is looking at the socket head on) Note that although jfreem says that Pin 5 is "latch", it is in fact connected to the TXD (transmit data) port of the DSP -- which seems to indicate that jfreem is in actuality programming the DSP. Two problems with reverse engineering his design. One is that he has the DSP instructions in a ".snd" (sound) file. This means that I can't use the Ariel 56K debugger provided with the NeXT since it only take .LOD files (the manual says "DSP absolute load image" which is in ASCII format (seems like assembler output to me)). Ariel doesn't provide a binary debugger. The other is that I'm not sure if jfreem is using the DSP merely as an input device (then cracking the raw data with the 040) or using it also as an input and cracking device. More news at 11 (hopefully). - jiro nakamura jiro@shaman.com ps. If anyone needs my computer resources on this, they are more than welcome to ask me. The library code itself is in .a format (which may or may not be the same as Sun's 68020 .a format, but should still be reverse assembled): shaman> ar t libPowerGlove.a __.SYMDEF SORTED PowerGlove.o shaman> ar xv libPowerGlove.a x - __.SYMDEF SORTED x - PowerGlove.o shaman> more "__.SYMDEF SORTED" p.objc_class_name_PowerGlove GDB disassembly =============== 0x0: linkw fp,c-8 0x4: movel a2,-(sp) 0x6: moveal 8(fp),a2 0xa: movel @c0xac4,-(sp) 0x10: movel a2,-8(fp) 0x14: movel @c0x91c,-4(fp) 0x1c: pea -8(fp) 0x20: bsr 0x0 0x26: movel a2,-(sp) 0x28: movel @c0xac8,-(sp) 0x2e: movel a2,-(sp) 0x30: bsr 0x0 0x36: moveb c1,37(a2) 0x3c: moveb c1,36(a2) 0x42: moveb c1,35(a2)0x48: movel a2,d0 0x4a: moveal -12(fp),a2 0x4e: unlk fp0x50: rts 0x52 <-[PowerGlove setCmdPort:]>: linkw fp,c0 0x56 <-[PowerGlove setCmdPort:]+4>: moveal 8(fp),a0 0x5a <-[PowerGlove setCmdPort:]+8>: movel 16(fp),8(a0) 0x60 <-[PowerGlove setCmdPort:]+14>: movel a0,d0 0x62 <-[PowerGlove setCmdPort:]+16>: unlk fp 0x64 <-[PowerGlove setCmdPort:]+18>: rts 0x66 : linkw fp,c-16 0x6a : moveml c14368,-(sp) 0x6e : movel 8(fp),d4 0x72 : clrl d3 0x74 : clrl -4(fp) 0x78 : clrl -8(fp) 0x7c : pea -8(fp) 0x80 : pea -4(fp) 0x84 : clrl -(sp) 0x86 : clrl -(sp) 0x88 : clrl -(sp) 0x8a : clrl -(sp) 0x8c : clrl -(sp) 0x8e : pea @c0x2 0x92 : bsr 0x0 0x98 : movel d0,d2 0x9a : addaw c32,sp 0x9e : beq 0xc6 0xa0 : movel d2,-(sp) 0xa2 : bsr 0x0 0xa8 : movel d0,-(sp) 0xaa : pea @c0x7b0 0xb0 : pea @c0x28 0xb6 : bsr 0x0 0xbc : pea @c0x1 0xc0 : bsr 0x0 0xc6 : pea -12(fp) 0xca : movel -8(fp),-(sp) 0xce : movel -4(fp),-(sp) 0xd2 : bsr 0x0 0xd8 : addaw c12,sp 0xdc : tstl d0 0xde : beq 0xf8 0xe0 : movel d0,-(sp) 0xe2 : pea @c0x7da 0xe8 : bsr 0x0 0xee : pea @c0x1 0xf2 : bsr 0x0 0xf8 : movel -12(fp),-(sp) 0xfc : movel @c0xacc,-(sp) 0x102 : movel d4,-(sp) 0x104 : lea @c0x0,a2 0x10a : jsr (a2) 0x10c : clrl -(sp) 0x10e : pea -16(fp) 0x112 : pea @c0x7f7 0x118 : bsr 0x0 0x11e : movel d0,d2 0x120 : addaw c24,sp 0x124 : beq 0x182 0x126 : pea @c0x806 0x12c : movel @c0xad0,-(sp) 0x132 : pea @c0x815 0x138 : bsr 0x0 0x13e : addqw c4,sp 0x140 : movel d0,-(sp) 0x142 : jsr (a2) 0x144 : movel d0,d3 0x146 : movel @c0xad4,-(sp) 0x14c : movel d3,-(sp) 0x14e : jsr (a2) 0x150 : movel d0,-16(fp) 0x154 : addaw c20,sp 0x158 : tstl d3 0x15a : bne 0x182 0x15c : movel d2,-(sp) 0x15e : bsr 0x0 0x164 : movel d0,-(sp) 0x166 : pea @c0x81b 0x16c : pea @c0x28 0x172 : bsr 0x0 0x178 : pea @c0x1 0x17c : bsr 0x0 0x182 : movel -16(fp),-(sp) 0x186 : movel -8(fp),-(sp) 0x18a : movel -4(fp),-(sp) 0x18e : bsr 0x0 0x194 : movel d0,d2 0x196 : addaw c12,sp 0x19a : beq 0x1c2 0x19c : movel d2,-(sp) 0x19e : bsr 0x0 0x1a4 : movel d0,-(sp) 0x1a6 : pea @c0x83d 0x1ac : pea @c0x28 0x1b2 : bsr 0x0 0x1b8 : pea @c0x1 0x1bc : bsr 0x0 0x1c2 : tstl d3 0x1c4 : beq 0x1d8 0x1c6 : movel @c0xad8,-(sp) 0x1cc : movel d3,-(sp) 0x1ce : bsr 0x0 0x1d4 : addqw c8,sp 0x1d6 : bra 0x1e4 0x1d8 : movel -16(fp),-(sp) 0x1dc : bsr 0x0 0x1e2 : addqw c4,sp 0x1e4 : pea @c0x1 0x1e8 : movel -8(fp),-(sp) 0x1ec : movel -4(fp),-(sp) 0x1f0 : bsr 0x0 0x1f6 : addaw c12,sp 0x1fa : tstl d0 0x1fc : beq 0x22c 0x1fe : movel d0,-(sp) 0x200 : pea @c0x853 0x206 : bsr 0x0 0x20c : pea @c0x1 0x210 : bsr 0x0 0x216 : bsr 0x0 0x21c : movel @c0xae0,-(sp) 0x222 : movel d4,-(sp) 0x224 : bsr 0x0 0x22a : addqw c8,sp 0x22c : movel @c0xadc,-(sp) 0x232 : movel d4,-(sp) 0x234 : bsr 0x0 0x23a : addqw c8,sp 0x23c : tstb d0 0x23e : bne 0x216 0x240 : pea @c0x1 0x244 : movel c134217728,-(sp) 0x24a : movel c134217728,-(sp) 0x250 : movel -12(fp),-(sp) 0x254 : bsr 0x0 0x25a : addaw c16,sp 0x25e : tstl d0 0x260 : beq 0x272 0x262 : movel d0,-(sp) 0x264 : pea @c0x868 0x26a : bsr 0x0 0x270 : addqw c8,sp 0x272 : movel -12(fp),-(sp) 0x276 : movel @c0x0,-(sp) 0x27c : bsr 0x0 0x282 : addqw c8,sp 0x284 : tstl d0 0x286 : beq 0x298 0x288 : movel d0,-(sp) 0x28a : pea @c0x87d 0x290 : bsr 0x0 0x296 : addqw c8,sp 0x298 : movel -8(fp),-(sp) 0x29c : movel @c0x0,-(sp) 0x2a2 : bsr 0x0 0x2a8 : addqw c8,sp 0x2aa : tstl d0 0x2ac : beq 0x2be 0x2ae : movel d0,-(sp) 0x2b0 : pea @c0x89b 0x2b6 : bsr 0x0 0x2bc : addqw c8,sp 0x2be : movel -4(fp),-(sp) 0x2c2 : movel @c0x0,-(sp) 0x2c8 : bsr 0x0 0x2ce : addqw c8,sp 0x2d0 : tstl d0 0x2d2 : beq 0x2e4 0x2d4 : movel d0,-(sp) 0x2d6 : pea @c0x8bb 0x2dc : bsr 0x0 0x2e2 : addqw c8,sp 0x2e4 : clrl -(sp) 0x2e6 : bsr 0x0 0x2ec : moveml -32(fp),c1052 0x2f2 : unlk fp 0x2f4 : rts 0x2f6 <-[PowerGlove startDSP:]>: linkw fp,c0 0x2fa <-[PowerGlove startDSP:]+4>: moveml c8224,-(sp) 0x2fe <-[PowerGlove startDSP:]+8>: moveal 8(fp),a2 0x302 <-[PowerGlove startDSP:]+12>: addql c1,20(a2) 0x306 <-[PowerGlove startDSP:]+16>: movel c1,d1 0x308 <-[PowerGlove startDSP:]+18>: cmpl 20(a2),d1 0x30c <-[PowerGlove startDSP:]+22>: bge 0x312 <-[PowerGlove startDSP:]+28> 0x30e <-[PowerGlove startDSP:]+24>: clrl d0 0x310 <-[PowerGlove startDSP:]+26>: bra 0x33a <-[PowerGlove startDSP:]+68> 0x312 <-[PowerGlove startDSP:]+28>: movel a2,-(sp) 0x314 <-[PowerGlove startDSP:]+30>: pea @c0x66 0x31a <-[PowerGlove startDSP:]+36>: bsr 0x0 0x320 <-[PowerGlove startDSP:]+42>: movel d0,d2 0x322 <-[PowerGlove startDSP:]+44>: pea @c0x8d9 0x328 <-[PowerGlove startDSP:]+50>: movel d2,-(sp) 0x32a <-[PowerGlove startDSP:]+52>: bsr 0x0 0x330 <-[PowerGlove startDSP:]+58>: movel d2,-(sp) 0x332 <-[PowerGlove startDSP:]+60>: bsr 0x0 0x338 <-[PowerGlove startDSP:]+66>: movel a2,d0 0x33a <-[PowerGlove startDSP:]+68>: moveml -8(fp),c1028 0x340 <-[PowerGlove startDSP:]+74>: unlk fp 0x342 <-[PowerGlove startDSP:]+76>: rts 0x344 <-[PowerGlove stopDSP:]>: linkw fp,c0 0x348 <-[PowerGlove stopDSP:]+4>: moveal 8(fp),a0 0x34c <-[PowerGlove stopDSP:]+8>: tstl 20(a0) 0x350 <-[PowerGlove stopDSP:]+12>: beq 0x35c <-[PowerGlove stopDSP:]+24> 0x352 <-[PowerGlove stopDSP:]+14>: subl c1,20(a0) 0x356 <-[PowerGlove stopDSP:]+18>: tstl 20(a0) 0x35a <-[PowerGlove stopDSP:]+22>: ble 0x360 <-[PowerGlove stopDSP:]+28> 0x35c <-[PowerGlove stopDSP:]+24>: clrl d0 0x35e <-[PowerGlove stopDSP:]+26>: bra 0x362 <-[PowerGlove stopDSP:]+30> 0x360 <-[PowerGlove stopDSP:]+28>: movel a0,d0 0x362 <-[PowerGlove stopDSP:]+30>: unlk fp 0x364 <-[PowerGlove stopDSP:]+32>: rts 0x366 <-[PowerGlove feedGloveToMouse:]>: linkw fp,c0 0x36a <-[PowerGlove feedGloveToMouse:]+4>: movel a2,-(sp) 0x36c <-[PowerGlove feedGloveToMouse:]+6>: moveal 8(fp),a2 0x370 <-[PowerGlove feedGloveToMouse:]+10>: moveb 19(fp),d0 0x374 <-[PowerGlove feedGloveToMouse:]+14>: moveb d0,d1 0x376 <-[PowerGlove feedGloveToMouse:]+16>: extbl d1 0x378 <-[PowerGlove feedGloveToMouse:]+18>: movel d1,12(a2) 0x37c <-[PowerGlove feedGloveToMouse:]+22>: tstb d0 0x37e <-[PowerGlove feedGloveToMouse:]+24>: beq 0x3b2 <-[PowerGlove feedGloveToMouse:]+76> 0x380 <-[PowerGlove feedGloveToMouse:]+26>: tstl 16(a2) 0x384 <-[PowerGlove feedGloveToMouse:]+30>: bgt 0x3b2 <-[PowerGlove feedGloveToMouse:]+76> 0x386 <-[PowerGlove feedGloveToMouse:]+32>: pea @c0x2 0x38a <-[PowerGlove feedGloveToMouse:]+36>: pea @c0x8e2 0x390 <-[PowerGlove feedGloveToMouse:]+42>: bsr 0x0 0x396 <-[PowerGlove feedGloveToMouse:]+48>: movel d0,16(a2) 0x39a <-[PowerGlove feedGloveToMouse:]+52>: addqw c8,sp 0x39c <-[PowerGlove feedGloveToMouse:]+54>: bge 0x3c6 <-[PowerGlove feedGloveToMouse:]+96> 0x39e <-[PowerGlove feedGloveToMouse:]+56>: pea @c0x8ec 0x3a4 <-[PowerGlove feedGloveToMouse:]+62>: pea @c0x28 0x3aa <-[PowerGlove feedGloveToMouse:]+68>: bsr 0x0 0x3b0 <-[PowerGlove feedGloveToMouse:]+74>: bra 0x3c6 <-[PowerGlove feedGloveToMouse:]+96> 0x3b2 <-[PowerGlove feedGloveToMouse:]+76>: tstl 16(a2) 0x3b6 <-[PowerGlove feedGloveToMouse:]+80>: blt 0x3c2 <-[PowerGlove feedGloveToMouse:]+92> 0x3b8 <-[PowerGlove feedGloveToMouse:]+82>: movel 16(a2),-(sp) 0x3bc <-[PowerGlove feedGloveToMouse:]+86>: bsr 0x0 0x3c2 <-[PowerGlove feedGloveToMouse:]+92>: clrl 16(a2) 0x3c6 <-[PowerGlove feedGloveToMouse:]+96>: movel a2,d0 0x3c8 <-[PowerGlove feedGloveToMouse:]+98>: moveal -4(fp),a2 0x3cc <-[PowerGlove feedGloveToMouse:]+102>: unlk fp 0x3ce <-[PowerGlove feedGloveToMouse:]+104>: rts 0x3d0 <-[PowerGlove free]>: linkw fp,c-8 0x3d4 <-[PowerGlove free]+4>: moveml c8224,-(sp) 0x3d8 <-[PowerGlove free]+8>: movel 8(fp),d2 0x3dc <-[PowerGlove free]+12>: clrl -(sp) 0x3de <-[PowerGlove free]+14>: movel @c0xae4,-(sp) 0x3e4 <-[PowerGlove free]+20>: movel d2,-(sp) 0x3e6 <-[PowerGlove free]+22>: lea @c0x0,a2 0x3ec <-[PowerGlove free]+28>: jsr (a2) 0x3ee <-[PowerGlove free]+30>: movel d2,-(sp) 0x3f0 <-[PowerGlove free]+32>: movel @c0xae8,-(sp) 0x3f6 <-[PowerGlove free]+38>: movel d2,-(sp) 0x3f8 <-[PowerGlove free]+40>: jsr (a2) 0x3fa <-[PowerGlove free]+42>: movel @c0xad8,-(sp) 0x400 <-[PowerGlove free]+48>: movel d2,-8(fp) 0x404 <-[PowerGlove free]+52>: movel @c0x91c,-4(fp) 0x40c <-[PowerGlove free]+60>: pea -8(fp) 0x410 <-[PowerGlove free]+64>: bsr 0x0 0x416 <-[PowerGlove free]+70>: movel d2,d0 0x418 <-[PowerGlove free]+72>: moveml -16(fp),c1028 0x41e <-[PowerGlove free]+78>: unlk fp 0x420 <-[PowerGlove free]+80>: rts 0x422 <-[PowerGlove feedingMouse]>: linkw fp,c0 0x426 <-[PowerGlove feedingMouse]+4>: moveal 8(fp),a0 0x42a <-[PowerGlove feedingMouse]+8>: moveb 15(a0),d0 0x42e <-[PowerGlove feedingMouse]+12>: extbl d0 0x430 <-[PowerGlove feedingMouse]+14>: unlk fp 0x432 <-[PowerGlove feedingMouse]+16>: rts 0x434 <-[PowerGlove dspIsRunning]>: linkw fp,c0 0x438 <-[PowerGlove dspIsRunning]+4>: moveal 8(fp),a0 0x43c <-[PowerGlove dspIsRunning]+8>: tstl 20(a0) 0x440 <-[PowerGlove dspIsRunning]+12>: ble 0x446 <-[PowerGlove dspIsRunning]+18> 0x442 <-[PowerGlove dspIsRunning]+14>: movel c1,d0 0x444 <-[PowerGlove dspIsRunning]+16>: bra 0x448 <-[PowerGlove dspIsRunning]+20> 0x446 <-[PowerGlove dspIsRunning]+18>: clrl d0 0x448 <-[PowerGlove dspIsRunning]+20>: unlk fp 0x44a <-[PowerGlove dspIsRunning]+22>: rts 0x44c <-[PowerGlove getDataByte:]>: linkw fp,c0 0x450 <-[PowerGlove getDataByte:]+4>: movel 16(fp),d0 0x454 <-[PowerGlove getDataByte:]+8>: movel c7,d1 0x456 <-[PowerGlove getDataByte:]+10>: cmpl d0,d1 0x458 <-[PowerGlove getDataByte:]+12>: blt 0x45e <-[PowerGlove getDataByte:]+18> 0x45a <-[PowerGlove getDataByte:]+14>: tstl d0 0x45c <-[PowerGlove getDataByte:]+16>: bge 0x462 <-[PowerGlove getDataByte:]+22> 0x45e <-[PowerGlove getDataByte:]+18>: clrl d0 0x460 <-[PowerGlove getDataByte:]+20>: bra 0x46c <-[PowerGlove getDataByte:]+32> 0x462 <-[PowerGlove getDataByte:]+22>: moveal 8(fp),a0 0x466 <-[PowerGlove getDataByte:]+26>: moveb 26(a0)[d0.l],d0 0x46a <-[PowerGlove getDataByte:]+30>: extbl d0 0x46c <-[PowerGlove getDataByte:]+32>: unlk fp 0x46e <-[PowerGlove getDataByte:]+34>: rts 0x470 <-[PowerGlove gloveMoved]>: linkw fp,c0 0x474 <-[PowerGlove gloveMoved]+4>: bsr 0x0 0x47a <-[PowerGlove gloveMoved]+10>: moveal 8(fp),a0 0x47e <-[PowerGlove gloveMoved]+14>: moveb 24(a0),d0 0x482 <-[PowerGlove gloveMoved]+18>: extbl d0 0x484 <-[PowerGlove gloveMoved]+20>: unlk fp 0x486 <-[PowerGlove gloveMoved]+22>: rts 0x488 <-[PowerGlove setxHyst:yHyst:zHyst:]>: linkw fp,c0 0x48c <-[PowerGlove setxHyst:yHyst:zHyst:]+4>: moveal 8(fp),a0 0x490 <-[PowerGlove setxHyst:yHyst:zHyst:]+8>: moveb 23(fp),d0 0x494 <-[PowerGlove setxHyst:yHyst:zHyst:]+12>: moveb 27(fp),d1 0x498 <-[PowerGlove setxHyst:yHyst:zHyst:]+16>: moveb 19(fp),35(a0) 0x49e <-[PowerGlove setxHyst:yHyst:zHyst:]+22>: moveb d0,36(a0) 0x4a2 <-[PowerGlove setxHyst:yHyst:zHyst:]+26>: moveb d1,37(a0) 0x4a6 <-[PowerGlove setxHyst:yHyst:zHyst:]+30>: movel a0,d0 0x4a8 <-[PowerGlove setxHyst:yHyst:zHyst:]+32>: unlk fp 0x4aa <-[PowerGlove setxHyst:yHyst:zHyst:]+34>: rts 0x4ac <-[PowerGlove fingerMoved]>: linkw fp,c0 0x4b0 <-[PowerGlove fingerMoved]+4>: moveal 8(fp),a0 0x4b4 <-[PowerGlove fingerMoved]+8>: moveb 25(a0),d0 0x4b8 <-[PowerGlove fingerMoved]+12>: extbl d0 0x4ba <-[PowerGlove fingerMoved]+14>: unlk fp 0x4bc <-[PowerGlove fingerMoved]+16>: rts 0x4be <-[PowerGlove gloveX]>: linkw fp,c0 0x4c2 <-[PowerGlove gloveX]+4>: moveal 8(fp),a0 0x4c6 <-[PowerGlove gloveX]+8>: clrb 24(a0) 0x4ca <-[PowerGlove gloveX]+12>: moveb 27(a0),d0 0x4ce <-[PowerGlove gloveX]+16>: extbl d0 0x4d0 <-[PowerGlove gloveX]+18>: unlk fp 0x4d2 <-[PowerGlove gloveX]+20>: rts 0x4d4 <-[PowerGlove gloveY]>: linkw fp,c0 0x4d8 <-[PowerGlove gloveY]+4>: moveal 8(fp),a0 0x4dc <-[PowerGlove gloveY]+8>: clrb 24(a0) 0x4e0 <-[PowerGlove gloveY]+12>: moveb 28(a0),d0 0x4e4 <-[PowerGlove gloveY]+16>: extbl d0 0x4e6 <-[PowerGlove gloveY]+18>: unlk fp 0x4e8 <-[PowerGlove gloveY]+20>: rts 0x4ea <-[PowerGlove gloveZ]>: linkw fp,c0 0x4ee <-[PowerGlove gloveZ]+4>: moveal 8(fp),a0 0x4f2 <-[PowerGlove gloveZ]+8>: clrb 24(a0) 0x4f6 <-[PowerGlove gloveZ]+12>: moveb 29(a0),d0 0x4fa <-[PowerGlove gloveZ]+16>: extbl d0 0x4fc <-[PowerGlove gloveZ]+18>: unlk fp 0x4fe <-[PowerGlove gloveZ]+20>: rts 0x500 <-[PowerGlove gloveRot]>: linkw fp,c0 0x504 <-[PowerGlove gloveRot]+4>: moveal 8(fp),a0 0x508 <-[PowerGlove gloveRot]+8>: moveb 30(a0),d0 0x50c <-[PowerGlove gloveRot]+12>: extbl d0 0x50e <-[PowerGlove gloveRot]+14>: unlk fp 0x510 <-[PowerGlove gloveRot]+16>: rts 0x512 <-[PowerGlove thumb]>: linkw fp,c0 0x516 <-[PowerGlove thumb]+4>: moveal 8(fp),a0 0x51a <-[PowerGlove thumb]+8>: clrb 25(a0) 0x51e <-[PowerGlove thumb]+12>: moveb 31(a0),d0 0x522 <-[PowerGlove thumb]+16>: asrb c6,d0 0x524 <-[PowerGlove thumb]+18>: movel c3,d1 0x526 <-[PowerGlove thumb]+20>: andl d1,d0 0x528 <-[PowerGlove thumb]+22>: unlk fp 0x52a <-[PowerGlove thumb]+24>: rts 0x52c <-[PowerGlove index]>: linkw fp,c0 0x530 <-[PowerGlove index]+4>: moveal 8(fp),a0 0x534 <-[PowerGlove index]+8>: clrb 25(a0) 0x538 <-[PowerGlove index]+12>: moveb 31(a0),d0 0x53c <-[PowerGlove index]+16>: asrb c4,d0 0x53e <-[PowerGlove index]+18>: movel c3,d1 0x540 <-[PowerGlove index]+20>: andl d1,d0 0x542 <-[PowerGlove index]+22>: unlk fp 0x544 <-[PowerGlove index]+24>: rts 0x546 <-[PowerGlove middle]>: linkw fp,c0 0x54a <-[PowerGlove middle]+4>: moveal 8(fp),a0 0x54e <-[PowerGlove middle]+8>: clrb 25(a0) 0x552 <-[PowerGlove middle]+12>: moveb 31(a0),d0 0x556 <-[PowerGlove middle]+16>: asrb c2,d0 0x558 <-[PowerGlove middle]+18>: movel c3,d1 0x55a <-[PowerGlove middle]+20>: andl d1,d0 0x55c <-[PowerGlove middle]+22>: unlk fp 0x55e <-[PowerGlove middle]+24>: rts 0x560 <-[PowerGlove ring]>: linkw fp,c0 0x564 <-[PowerGlove ring]+4>: moveal 8(fp),a0 0x568 <-[PowerGlove ring]+8>: clrb 25(a0) 0x56c <-[PowerGlove ring]+12>: moveb 31(a0),d0 0x570 <-[PowerGlove ring]+16>: movel c3,d1 0x572 <-[PowerGlove ring]+18>: andl d1,d0 0x574 <-[PowerGlove ring]+20>: unlk fp 0x576 <-[PowerGlove ring]+22>: rts 0x578 <-[PowerGlove padUp]>: linkw fp,c0 0x57c <-[PowerGlove padUp]+4>: moveal 8(fp),a0 0x580 <-[PowerGlove padUp]+8>: cmpib c13,32(a0) 0x586 <-[PowerGlove padUp]+14>: bne 0x58c <-[PowerGlove padUp]+20> 0x588 <-[PowerGlove padUp]+16>: movel c1,d0 0x58a <-[PowerGlove padUp]+18>: bra 0x58e <-[PowerGlove padUp]+22> 0x58c <-[PowerGlove padUp]+20>: clrl d0 0x58e <-[PowerGlove padUp]+22>: unlk fp 0x590 <-[PowerGlove padUp]+24>: rts 0x592 <-[PowerGlove padDown]>: linkw fp,c0 0x596 <-[PowerGlove padDown]+4>: moveal 8(fp),a0 0x59a <-[PowerGlove padDown]+8>: cmpib c14,32(a0) 0x5a0 <-[PowerGlove padDown]+14>: bne 0x5a6 <-[PowerGlove padDown]+20> 0x5a2 <-[PowerGlove padDown]+16>: movel c1,d0 0x5a4 <-[PowerGlove padDown]+18>: bra 0x5a8 <-[PowerGlove padDown]+22> 0x5a6 <-[PowerGlove padDown]+20>: clrl d0 0x5a8 <-[PowerGlove padDown]+22>: unlk fp 0x5aa <-[PowerGlove padDown]+24>: rts 0x5ac <-[PowerGlove padLeft]>: linkw fp,c0 0x5b0 <-[PowerGlove padLeft]+4>: moveal 8(fp),a0 0x5b4 <-[PowerGlove padLeft]+8>: cmpib c12,32(a0) 0x5ba <-[PowerGlove padLeft]+14>: bne 0x5c0 <-[PowerGlove padLeft]+20> 0x5bc <-[PowerGlove padLeft]+16>: movel c1,d0 0x5be <-[PowerGlove padLeft]+18>: bra 0x5c2 <-[PowerGlove padLeft]+22> 0x5c0 <-[PowerGlove padLeft]+20>: clrl d0 0x5c2 <-[PowerGlove padLeft]+22>: unlk fp 0x5c4 <-[PowerGlove padLeft]+24>: rts 0x5c6 <-[PowerGlove padRight]>: linkw fp,c0 0x5ca <-[PowerGlove padRight]+4>: moveal 8(fp),a0 0x5ce <-[PowerGlove padRight]+8>: cmpib c15,32(a0) 0x5d4 <-[PowerGlove padRight]+14>: bne 0x5da <-[PowerGlove padRight]+20> 0x5d6 <-[PowerGlove padRight]+16>: movel c1,d0 0x5d8 <-[PowerGlove padRight]+18>: bra 0x5dc <-[PowerGlove padRight]+22> 0x5da <-[PowerGlove padRight]+20>: clrl d0 0x5dc <-[PowerGlove padRight]+22>: unlk fp 0x5de <-[PowerGlove padRight]+24>: rts 0x5e0 <-[PowerGlove aPressed]>: linkw fp,c0 0x5e4 <-[PowerGlove aPressed]+4>: moveal 8(fp),a0 0x5e8 <-[PowerGlove aPressed]+8>: cmpib c10,32(a0) 0x5ee <-[PowerGlove aPressed]+14>: bne 0x5f4 <-[PowerGlove aPressed]+20> 0x5f0 <-[PowerGlove aPressed]+16>: movel c1,d0 0x5f2 <-[PowerGlove aPressed]+18>: bra 0x5f6 <-[PowerGlove aPressed]+22> 0x5f4 <-[PowerGlove aPressed]+20>: clrl d0 0x5f6 <-[PowerGlove aPressed]+22>: unlk fp 0x5f8 <-[PowerGlove aPressed]+24>: rts 0x5fa <-[PowerGlove bPressed]>: linkw fp,c0 0x5fe <-[PowerGlove bPressed]+4>: moveal 8(fp),a0 0x602 <-[PowerGlove bPressed]+8>: cmpib c11,32(a0) 0x608 <-[PowerGlove bPressed]+14>: bne 0x60e <-[PowerGlove bPressed]+20> 0x60a <-[PowerGlove bPressed]+16>: movel c1,d0 0x60c <-[PowerGlove bPressed]+18>: bra 0x610 <-[PowerGlove bPressed]+22> 0x60e <-[PowerGlove bPressed]+20>: clrl d0 0x610 <-[PowerGlove bPressed]+22>: unlk fp 0x612 <-[PowerGlove bPressed]+24>: rts 0x614 <-[PowerGlove startPressed]>: linkw fp,c0 0x618 <-[PowerGlove startPressed]+4>: moveal 8(fp),a0 0x61c <-[PowerGlove startPressed]+8>: cmpib c-126,32(a0) 0x622 <-[PowerGlove startPressed]+14>: bne 0x628 <-[PowerGlove startPressed]+20> 0x624 <-[PowerGlove startPressed]+16>: movel c1,d0 0x626 <-[PowerGlove startPressed]+18>: bra 0x62a <-[PowerGlove startPressed]+22> 0x628 <-[PowerGlove startPressed]+20>: clrl d0 0x62a <-[PowerGlove startPressed]+22>: unlk fp 0x62c <-[PowerGlove startPressed]+24>: rts 0x62e <-[PowerGlove selectPressed]>: linkw fp,c0 0x632 <-[PowerGlove selectPressed]+4>: moveal 8(fp),a0 0x636 <-[PowerGlove selectPressed]+8>: cmpib c-125,32(a0) 0x63c <-[PowerGlove selectPressed]+14>: bne 0x642 <-[PowerGlove selectPressed]+20> 0x63e <-[PowerGlove selectPressed]+16>: movel c1,d0 0x640 <-[PowerGlove selectPressed]+18>: bra 0x644 <-[PowerGlove selectPressed]+22> 0x642 <-[PowerGlove selectPressed]+20>: clrl d0 0x644 <-[PowerGlove selectPressed]+22>: unlk fp 0x646 <-[PowerGlove selectPressed]+24>: rts 0x648 <-[PowerGlove selectPressed]+26>: linkw fp,c-36 0x64c: moveml c8224,-(sp) 0x650: moveal 8(fp),a2 0x654: tstl 20(a2) 0x658: bgt 0x660 0x65a: clrl d0 0x65c: bra 0x7a6 0x660: movel c8,d2 0x662: movel d2,-36(fp) 0x666: pea @c0x1 0x66a: pea @c0x4 0x66e: pea -36(fp) 0x672: pea -32(fp) 0x676: movel 8(a2),-(sp) 0x67a: bsr 0x0 0x680: addaw c20,sp 0x684: tstl d0 0x686: bne 0x68e 0x688: cmpl -36(fp),d2 0x68c: beq 0x6a6 0x68e: movel d0,-(sp) 0x690: pea @c0x901 0x696: bsr 0x0 0x69c: pea @c0x1 0x6a0: bsr 0x0 0x6a6: moveb -29(fp),26(a2) 0x6ac: moveb 27(a2),d0 0x6b0: extbl d0 0x6b2: moveb -25(fp),d1 0x6b6: extbl d1 0x6b8: subl d1,d0 0x6ba: movel d0,-(sp) 0x6bc: bsr 0x0 0x6c2: moveb 35(a2),d1 0x6c6: extbl d1 0x6c8: addqw c4,sp 0x6ca: cmpl d0,d1 0x6cc: bge 0x6f2 0x6ce: moveb c1,24(a2) 0x6d4: moveb 27(a2),d0 0x6d8: extbl d0 0x6da: moveb -25(fp),d1 0x6de: extbl d1 0x6e0: moveal d1,a0 0x6e2: lea 0(a0)[d0.l*2],a0 0x6e6: movel a0,d0 0x6e8: movel c3,d2 0x6ea: divsll d2,d0,d0 0x6ee: moveb d0,27(a2) 0x6f2: moveb 28(a2),d0 0x6f6: extbl d0 0x6f8: subl -24(fp),d0 0x6fc: movel d0,-(sp) 0x6fe: bsr 0x0 0x704: moveb 36(a2),d1 0x708: extbl d1 0x70a: addqw c4,sp 0x70c: cmpl d0,d1 0x70e: bge 0x734 0x710: moveb c1,24(a2) 0x716: moveb 28(a2),d0 0x71a: extbl d0 0x71c: moveb -21(fp),d1 0x720: extbl d1 0x722: moveal d1,a0 0x724: lea 0(a0)[d0.l*2],a0 0x728: movel a0,d0 0x72a: movel c3,d2 0x72c: divsll d2,d0,d0 0x730: moveb d0,28(a2) 0x734: moveb 29(a2),d0 0x738: extbl d0 0x73a: moveb -17(fp),d1 0x73e: extbl d1 0x740: subl d1,d0 0x742: movel d0,-(sp) 0x744: bsr 0x0 0x74a: moveb 37(a2),d1 0x74e: extbl d1 0x750: cmpl d0,d1 0x752: bge 0x778 0x754: moveb c1,24(a2) 0x75a: moveb 29(a2),d0 0x75e: extbl d0 0x760: moveb -17(fp),d1 0x764: extbl d1 0x766: moveal d1,a0 0x768: lea 0(a0)[d0.l*2],a0 0x76c: movel a0,d0 0x76e: movel c3,d2 0x770: divsll d2,d0,d0 0x774: moveb d0,29(a2) 0x778: moveb -13(fp),30(a2) 0x77e: moveb 31(a2),d2 0x782: cmpb -9(fp),d2 0x786: beq 0x794 0x788: moveb c1,25(a2) 0x78e: moveb -9(fp),31(a2) 0x794: movel c6,d0 0x796: moveb 65507(fp)[d0.l*4],26(a2)[d0.l] 0x79c: addql c1,d0 0x79e: movel c7,d2 0x7a0: cmpl d0,d2 0x7a2: bge 0x796 0x7a4: movel a2,d0 0x7a6: moveml -44(fp),c1028 0x7ac: unlk fp 0x7ae: rts 0x7b0: movel 10784(a2),d5 0x7b4: 041557 0x7b6: 072554 0x7b8: bcc 0x7da 0x7ba: bgt 0x82b 0x7bc: movel c32,d2 0x7be: bsr 0x823 0x7c0: 070565 0x7c2: bvs 0x836 0x7c4: bcs 0x7e6 0x7c6: negw (a3) 0x7c8: addqb c8,a2 0x7ca: subqw c1,fp 0x7cc: negw d1 0x7ce: bls 0x841 0x7d0: 072551 0x7d2: movel c101,d1 0x7d4: movew -(a0),d5 0x7d6: movel 0(a3)[d0.l*2],17249(a2) 0x7dc: bgt 0x84c 0x7de: ble 0x854 0x7e0: moveal -(a1),a0 0x7e2: bls 0x855 0x7e4: 072551 0x7e6: movel c101,d1 0x7e8: moveal -(a3),a0 0x7ea: ble 0x859 0x7ec: blt 0x84f 0x7ee: bgt 0x854 0x7f0: moveal 28535(1948254320(a0)),a0 0x7fa: bcs 0x86e 0x7fc: beq 0x86a 0x7fe: ble 0x876 0x800: bcs 0x830 0x802: bge 0x873 0x804: bcc 0x7875 0x808: 073545 0x80a: movel c103,d1 0x80c: bge 0x87d 0x80e: movel c101,d3 0x810: moveal 100(a3)[d6.l*8],sp 0x814: oriw c28533,(a3) 0x818: bgt 0x87e 0x81a: oriw c24942,d3 0x81e: bgt 0x88f 0x820: movel c32,d2 0x822: movel c97,d0 0x824: movel c115,d1 0x826: bcs 0x848 0x828: negw (a3) 0x82a: addqb c8,-(a0) 0x82c: bge 0x89d 0x82e: bsr 0x894 0x830: moveal 28001(a1),a0 0x834: beq 0x89b 0x836: movel 0x285d,d0 0x83a: 071412 0x83c: oriw c24942,d3 0x840: bgt 0x8b1 0x842: movel c32,d2 0x844: bhi 0x8b5 0x846: ble 0x8bc 0x848: moveal -(a4),a0 0x84a: 071560 0x84c: movel 0x2873,d0 0x850: 071412 0x852: oriw c24942,d3 0x856: bgt 0x8c7 0x858: movel c32,d2 0x85a: 071545 0x85c: movel c32,d2 0x85e: movel c114,d0 0x860: ble 0x8d6 0x862: ble 0x8c7 0x864: ble 0x8d2 0x866: movel d0,d0 0x868: 041541 0x86a: bgt 0x8da 0x86c: ble 0x8e2 0x86e: moveal 111(a3)[d7.w*4],a0 0x872: movel c32,d0 0x874: movel c104,d2 0x876: bcs 0x898 0x878: bcc 0x8ed 0x87a: movel c32,d0 0x87c: oriw c28533,d3 0x880: bge 0x8e6 0x882: bgt 0x8ab 0x884: movel c32,d2 0x886: bcc 0x8ed 0x888: bsr 0x8f6 0x88a: bge 0x8fb 0x88c: bls 0x8ef 0x88e: movel c101,d2 0x890: moveal -(a3),a0 0x892: blt 0x8f8 0x894: subqw c7,28533(1948254275(a0)) 0x89e: bge 0x904 0x8a0: bgt 0x8c9 0x8a2: movel c32,d2 0x8a4: bcc 0x90b 0x8a6: bsr 0x914 0x8a8: bge 0x919 0x8aa: bls 0x90d 0x8ac: movel c101,d2 0x8ae: moveal 30574(sp),a0 0x8b2: bcs 0x926 0x8b4: subqw c7,28533(1948254275(a0)) 0x8be: bge 0x924 0x8c0: bgt 0x8e9 0x8c2: movel c32,d2 0x8c4: bcc 0x92b 0x8c6: bsr 0x934 0x8c8: bge 0x939 0x8ca: bls 0x92d 0x8cc: movel c101,d2 0x8ce: moveal -(a4),a0 0x8d0: bcs 0x948 0x8d2: subqw c7,28535(1948254288(a0)) 0x8dc: bcs 0x950 0x8de: negw (a3) 0x8e0: addqb c8,d0 0x8e2: movel -(a4),25974(sp) 0x8e6: movel -(a5),30323(sp) 0x8ea: movew d0,d0 0x8ec: bls 0x94f 0x8ee: bgt 0x964 0x8f0: moveal 28773(sp),a0 0x8f4: bgt 0x916 0x8f6: bcs 0x96e 0x8f8: 071440 0x8fa: bcc 0x96e 0x8fc: bvs 0x974 0x8fe: bcs 0x972 0x900: oriw c24942,d3 0x904: bgt 0x975 0x906: movel c32,d2 0x908: movel c101,d1 0x90a: bsr 0x970 0x90c: moveal -(fp),a0 0x90e: movel c111,d1 0x910: blt 0x932 0x912: negw (a3) 0x914: addqb c8,-(a0) 0x916: orb c0,d0 0x91a: btst d4,Invalid arg format in opcode table: "@s".