To make the DSM protocol work, we need to trick the remote into thinking we're in the right mode and I've figured out what's needed.
The DSM code that's currenty supplied by the SP spreadsheet when you select the Mil4 is for the B01 version, here's what it currently looks like...
Code: Select all
8000: 00 00 DB 00H, 00H
8002: 01 DB 01H
8003: E4 03 7C LD R7C, R03
8006: 50 C0 POP RC0
8008: 50 C1 POP RC1
800A: 50 C2 POP RC2
800C: 50 C3 POP RC3
800E: 50 C4 POP RC4
8010: C6 CA 06 1E LDW RCA, #061EH
8014: 70 CB PUSH RCB
8016: 70 CA PUSH RCA
8018: 70 C4 PUSH RC4
801A: 70 C3 PUSH RC3
801C: 70 C2 PUSH RC2
801E: 30 C0 JP @RC0Code: Select all
8000: 00 00 DB 00H, 00H
8002: 01 DB 01H
8003: E4 5F 63 LD R63, R5F
8006: E4 03 7C LD R7C, R03
8009: 50 C0 POP RC0
800B: 50 C1 POP RC1
800D: 50 C2 POP RC2
800F: 50 C3 POP RC3
8011: 50 C4 POP RC4
8013: C6 CA 06 1E LDW RCA, #061EH
8017: 70 CB PUSH RCB
8019: 70 CA PUSH RCA
801B: 70 C4 PUSH RC4
801D: 70 C3 PUSH RC3
801F: 70 C2 PUSH RC2
8021: 30 C0 JP @RC0Here's what the code for the B00 version should look like...
Code: Select all
8000: 00 00 DB 00H, 00H
8002: 01 DB 01H
8003: E4 8A 62 LD R62, R8A
8006: E4 03 7B LD R7B, R03
8009: 50 C0 POP RC0
800B: 50 C1 POP RC1
800D: 50 C2 POP RC2
800F: 50 C3 POP RC3
8011: 50 C4 POP RC4
8013: C6 CA 06 1E LDW RCA, #061EH
8017: 70 CB PUSH RCB
8019: 70 CA PUSH RCA
801B: 70 C4 PUSH RC4
801D: 70 C3 PUSH RC3
801F: 70 C2 PUSH RC2
8021: 30 C0 JP @RC0Both of these versions are tested.