In CPU1 (sound CPU) 00C0: 3E 0E ld a,$0E 00C2: 32 80 A0 ld ($A080),a 00C5: 3A 81 A0 ld a,($A081) 00C8: 2F cpl 00C9: 47 ld b,a 00CA: E6 F0 and $F0 00CC: 4F ld c,a IN0 bits 4 to 7 (player 2 controls) 00CD: 78 ld a,b 00CE: 07 rlca 00CF: 07 rlca 00D0: 07 rlca 00D1: 07 rlca 00D2: E6 F0 and $F0 00D4: 47 ld b,a IN0 bits 0 to 3 (player 1 controls) 00D5: 3E 0F ld a,$0F 00D7: 32 80 A0 ld ($A080),a 00DA: 3A 81 A0 ld a,($A081) 00DD: 2F cpl 00DE: 32 0B C8 ld ($C80B),a 00E1: 5F ld e,a 00E2: E6 03 and $03 IN1 bits 0 to 1 (player 1 buttons) 00E4: B0 or b merge with player 1 controls 00E5: 32 07 C8 ld ($C807),a store in shared memory 00E8: 7B ld a,e 00E9: 0F rrca 00EA: 0F rrca 00EB: E6 03 and $03 IN1 bits 2 to 3 (player 2 buttons) 00ED: B1 or c merge with player 2 controls 00EE: 32 08 C8 ld ($C808),a store in shared memory 00F1: 3E 0E ld a,$0E 00F3: 32 90 A0 ld ($A090),a 00F6: 3A 91 A0 ld a,($A091) DSW1 00F9: 2F cpl 00FA: 32 09 C8 ld ($C809),a store in shared memory 00FD: 3E 0F ld a,$0F 00FF: 32 90 A0 ld ($A090),a 0102: 3A 91 A0 ld a,($A091) DSW2 0105: 2F cpl 0106: 32 0A C8 ld ($C80A),a store in shared memory 0109: C9 ret In CPU0 (main CPU) 0540: 3A 09 C8 ld a,($C809) load DSW1 0543: E6 10 and $10 "Cabinet" Dip Switch 0545: 21 07 C8 ld hl,$C807 use player 1 address 0548: 20 50 jr nz,$059A if "Upright", goto Upright Cocktail : 054A: 3A 14 C2 ld a,($C21D) player turn 054D: E6 40 and $40 054F: 28 03 jr z,$0550 if player 1, goto Read 0551: 21 08 C8 ld hl,$C808 use player 2 address Read : 0554: 46 ld b,(hl) load player controls + buttons Proceed : 0555: AF xor a ... 0583: C9 ret Upright : 059A: 7E ld a,(hl) load player 1 controls + buttons 059B: 23 inc hl 059C: B6 or (hl) merge player 2 controls + buttons 059D: 47 ld b,a 059E: C3 55 05 jp $0555