BTII - DUNGEON DISK B - Riddler (Maze of Dread 2)
Posted: Mon Jan 18, 2021 9:37 am
BTII DUNGEON-B Disk
Special Event: "Riddler" (Maze of Dread level 2 - gives Sword of Zar)
This is the special event found on the 2nd level of the Maze of Dread where the Riddler gives the party the Sword of Zar, if they say the right word.
Memory begins: A200
Proof (enter in monitor while in a city):
Give character in party slot 0 item #$71 (Sword of Zar)
Special Event: "Riddler" (Maze of Dread level 2 - gives Sword of Zar)
This is the special event found on the 2nd level of the Maze of Dread where the Riddler gives the party the Sword of Zar, if they say the right word.
Memory begins: A200
Code: Select all
.C:a200 A9 00 LDA #$00
.C:a202 85 44 STA $44
.C:a204 A6 44 LDX $44
.C:a206 A9 0C LDA #$0C
.C:a208 20 F0 08 JSR $08F0
.C:a20b B0 03 BCS $A210
.C:a20d 4C 89 A2 JMP $A289
.C:a210 E6 44 INC $44
.C:a212 A5 44 LDA $44
.C:a214 C9 07 CMP #$07
.C:a216 90 EC BCC $A204
.C:a218 E6 C1 INC $C1 Pausing time
.C:a21a A2 35 LDX #$35
.C:a21c 20 1B 08 JSR $081B Display picture #$35 (Mage tossing fireball)
.C:a21f 20 E1 08 JSR $08E1 Clear text window.
.C:a222 A0 A2 LDY #$A2
.C:a224 A2 99 LDX #$99
.C:a226 20 06 08 JSR $0806 "A man appears in a puff of smoke..."
.C:a229 20 36 08 JSR $0836 Prompt for keyboard input
.C:a22c B0 54 BCS $A282 Hit RETURN? Go $a282
.C:a22e A2 02 LDX #$02 Password is 3 characters (0, 1, 2)
.C:a230 BD 34 03 LDA $0334,X Get first 3 characters from input string
.C:a233 DD A6 A3 CMP $A3A6,X Match the word stored at $a3a6 - a3a8? Go $a238
.C:a236 D0 4A BNE $A282 Word wrong? Go $a282
.C:a238 CA DEX X = X -1
.C:a239 10 F5 BPL $A230 Is X>0? Go $A230 (get more letters)
.C:a23b A0 A3 LDY #$A3
.C:a23d A2 4A LDX #$4A
.C:a23f 20 06 08 JSR $0806 "[CR][CR]'Correct!' he exclaims..."
.C:a242 A9 08 LDA #$08
.C:a244 20 1A 09 JSR $091A Wait a time...
.C:a247 A9 00 LDA #$00
.C:a249 85 44 STA $44
.C:a24b A9 71 LDA #$71 Item #$71 - Sword of Zar
.C:a24d 85 70 STA $70 Store it at $0070
.C:a24f A9 00 LDA #$00
.C:a251 85 73 STA $73
.C:a253 8D 4C 03 STA $034C
.C:a256 A5 44 LDA $44
.C:a258 20 5D 08 JSR $085D Give item in $0070?
.C:a25b 90 0A BCC $A267 Find the first free item slot in party?
.C:a25d E6 44 INC $44
.C:a25f A5 44 LDA $44
.C:a261 C9 07 CMP #$07
.C:a263 90 F1 BCC $A256
.C:a265 B0 22 BCS $A289
.C:a267 A5 44 LDA $44
.C:a269 0A ASL A
.C:a26a AA TAX
.C:a26b BC AA A3 LDY $A3AA,X
.C:a26e BD A9 A3 LDA $A3A9,X
.C:a271 AA TAX
.C:a272 20 E1 08 JSR $08E1
.C:a275 20 06 08 JSR $0806
.C:a278 A0 A3 LDY #$A3
.C:a27a A2 9D LDX #$9D
.C:a27c 20 06 08 JSR $0806
.C:a27f 4C 89 A2 JMP $A289
.C:a282 A0 A3 LDY #$A3
.C:a284 A2 75 LDX #$75
.C:a286 20 06 08 JSR $0806 "[CR][CR]'Sorry!' he mumbles, then disappears."
.C:a289 E6 1D INC $1D
.C:a28b 20 09 90 JSR $9009
.C:a28e A4 29 LDY $29
.C:a290 B1 6E LDA ($6E),Y
.C:a292 29 FB AND #$FB
.C:a294 91 6E STA ($6E),Y
.C:a296 4C 03 90 JMP $9003 Back to main program.
.C:a299 C1 A0 CMP ($A0,X) [A][_]
.C:a29b ED E1 EE SBC $EEE1 [m][a][n]
.C:a29e A0 E1 LDY #$E1 [_][a]
.C:a2a0 F0 F0 BEQ $A292 [p][p]
.C:a2a2 E5 E1 SBC $E1 [e][a]
.C:a2a4 F2 JAM [r]
.C:a2a5 F3 A0 ISB ($A0),Y [s][_]
.C:a2a7 E9 EE SBC #$EE [i][n]
.C:a2a9 A0 E1 LDY #$E1 [_][a]
.C:a2ab A0 F0 LDY #$F0 [_][p]
.C:a2ad F5 E6 SBC $E6,X [u][f]
.C:a2af E6 A0 INC $A0 [f][_]
.C:a2b1 EF E6 A0 ISB $A0E6 [o][f][_]
.C:a2b4 F3 ED ISB ($ED),Y [s][m]
.C:a2b6 EF EB E5 ISB $E5EB [o][k][e]
.C:a2b9 AC A0 E1 LDY $E1A0 [,][_][a]
.C:a2bc EE E4 A0 INC $A0E4 [n][d][_]
.C:a2bf F3 F0 ISB ($F0),Y [s][p]
.C:a2c1 E5 E1 SBC $E1 [e][a]
.C:a2c3 EB F3 USBC #$F3 [k][s]
.C:a2c5 A0 F4 LDY #$F4 [_][t]
.C:a2c7 EF A0 F9 ISB $F9A0 [o][_][y]
.C:a2ca EF F5 BA ISB $BAF5 [o][u][:]
.C:a2cd 00 BRK [CR]
.C:a2ce A2 C2 LDX #$C2 ["][B]
.C:a2d0 EC F5 E5 CPX $E5F5 [l][u][e]
.C:a2d3 AC A0 F2 LDY $F2A0 [,][_][r]
.C:a2d6 E5 E4 SBC $E4 [e][d]
.C:a2d8 AC A0 E7 LDY $E7A0 [,][_][g]
.C:a2db F2 JAM [r]
.C:a2dc E5 E5 SBC $E5 [e][e]
.C:a2de EE AC A0 INC $A0AC [n][,][_]
.C:a2e1 E2 F2 NOOP #$F2 [b][r]
.C:a2e3 EF F7 EE ISB $EEF7 [o][w][n]
.C:a2e6 AC A0 E2 LDY $E2A0 [,][_][b]
.C:a2e9 EC E1 E3 CPX $E3E1 [l][a][c]
.C:a2ec EB AC USBC #$AC [k][,]
.C:a2ee A0 F7 LDY #$F7 [_][w]
.C:a2f0 E8 INX [h]
.C:a2f1 E9 F4 SBC #$F4 [i][t]
.C:a2f3 E5 AC SBC $AC [e][,]
.C:a2f5 A0 F9 LDY #$F9 [_][y]
.C:a2f7 E5 EC SBC $EC [e][l]
.C:a2f9 EC EF F7 CPX $F7EF [l][o][w]
.C:a2fc BB A0 C3 LAS $C3A0,Y [;][_][C]
.C:a2ff EF EC EF ISB $EFEC [o][l][o]
.C:a302 F2 JAM [r]
.C:a303 F3 A0 ISB ($A0),Y [s][_]
.C:a305 E3 E1 ISB ($E1,X) [c][a]
.C:a307 F3 F4 ISB ($F4),Y [s][t]
.C:a309 A0 E9 LDY #$E9 [_][i]
.C:a30b EE A0 F4 INC $F4A0 [n][_][t]
.C:a30e E8 INX [h]
.C:a30f E5 A0 SBC $A0 [e][_]
.C:a311 E1 F2 SBC ($F2,X) [a][r]
.C:a313 F4 E9 NOOP $E9,X [t][i]
.C:a315 F3 F4 ISB ($F4),Y [s][t]
.C:a317 A7 F3 LAX $F3 ['][s]
.C:a319 A0 F0 LDY #$F0 [_][p]
.C:a31b EF F4 AC ISB $ACF4 [o][t][,]
.C:a31e A0 EE LDY #$EE [_][n]
.C:a320 E1 ED SBC ($ED,X) [a][m]
.C:a322 E5 A0 SBC $A0 [e][_]
.C:a324 F4 E8 NOOP $E8,X [t][h]
.C:a326 E5 A0 SBC $A0 [e][_]
.C:a328 E6 E1 INC $E1 [f][a]
.C:a32a EC F3 E5 CPX $E5F3 [l][s][e]
.C:a32d A0 F7 LDY #$F7 [_][w]
.C:a32f E8 INX [h]
.C:a330 E9 EC SBC #$EC [i][l]
.C:a332 E5 A0 SBC $A0 [e][_]
.C:a334 E3 E1 ISB ($E1,X) [c][a]
.C:a336 EE F3 F4 INC $F4F3 [n][s][t]
.C:a339 A0 E2 LDY #$E2 [_][b]
.C:a33b E5 A0 SBC $A0 [e][_]
.C:a33d E3 E1 ISB ($E1,X) [c][a]
.C:a33f F5 E7 SBC $E7,X [u][g]
.C:a341 E8 INX [h]
.C:a342 F4 AE NOOP $AE,X [t][.]
.C:a344 AE AE A2 LDX $A2AE [.][.]["]
.C:a347 00 BRK [CR]
.C:a348 00 BRK [CR]
.C:a349 FF 00 00 ISB $0000,X [Input][CR][CR]
.C:a34c A2 C3 LDX #$C3 ["][C]
.C:a34e EF F2 F2 ISB $F2F2 [o][r][r]
.C:a351 E5 E3 SBC $E3 [e][c]
.C:a353 F4 A1 NOOP $A1,X [t][!]
.C:a355 A2 A0 LDX #$A0 ["][ ]
.C:a357 E8 INX [h]
.C:a358 E5 A0 SBC $A0 [e][_]
.C:a35a E5 F8 SBC $F8 [e][x]
.C:a35c E3 EC ISB ($EC,X) [c][l]
.C:a35e E1 E9 SBC ($E9,X) [a][i]
.C:a360 ED F3 AC SBC $ACF3 [m][s][,]
.C:a363 A0 F4 LDY #$F4 [_][t]
.C:a365 E8 INX [h]
.C:a366 E5 EE SBC $EE [e][n]
.C:a368 A0 E4 LDY #$E4 [_][d]
.C:a36a E9 F3 SBC #$F3 [i][s]
.C:a36c E1 F0 SBC ($F0,X) [a][p]
.C:a36e F0 E5 BEQ $A355 [p][e]
.C:a370 E1 F2 SBC ($F2,X) [a][r]
.C:a372 F3 AE ISB ($AE),Y [s][.]
.C:a374 DC 00 00 NOOP $0000,X [EOT][CR][CR]
.C:a377 A2 D3 LDX #$D3 ["][S]
.C:a379 EF F2 F2 ISB $F2F2 [o][r][r]
.C:a37c F9 A1 A2 SBC $A2A1,Y [y][!]["]
.C:a37f A0 E8 LDY #$E8 [_][h]
.C:a381 E5 A0 SBC $A0 [e][_]
.C:a383 ED F5 ED SBC $EDF5 [m][u][m]
.C:a386 E2 EC NOOP #$EC [b][l]
.C:a388 E5 F3 SBC $F3 [e][s]
.C:a38a AC A0 F4 LDY $F4A0 [,][_][t]
.C:a38d E8 INX [h]
.C:a38e E5 EE SBC $EE [e][n]
.C:a390 A0 E4 LDY #$E4 [_][d]
.C:a392 E9 F3 SBC #$F3 [i][s]
.C:a394 E1 F0 SBC ($F0,X) [a][p]
.C:a396 F0 E5 BEQ $A37D [p][e]
.C:a398 E1 F2 SBC ($F2,X) [a][r]
.C:a39a F3 AE ISB ($AE),Y [s][.]
.C:a39c DC A0 E7 NOOP $E7A0,X [EOT][_][g]
.C:a39f EF F4 A0 ISB $A0F4 [o][t][_]
.C:a3a2 E9 F4 SBC #$F4 [i][t]
.C:a3a4 AE DC C4 LDX $C4DC [.][EOT][D]
.C:a3a7 C5 D2 CMP $D2 [E][R]
.C:a3a9 00 BRK Begin data field....
.C:a3aa B8 CLV
.C:a3ab 80 B8 NOOP #$B8
.C:a3ad 00 BRK
.C:a3ae B9 80 B9 LDA $B980,Y
.C:a3b1 00 BRK
.C:a3b2 BA TSX
.C:a3b3 80 BA NOOP #$BA
.C:a3b5 00 BRK
Proof (enter in monitor while in a city):
Code: Select all
.9a00 lda #$00
.9a02 sta $44
.9a04 lda #$71
.9a06 sta $70
.9a08 lda #$00
.9a0a sta $73
.9a0c sta $034c
.9a0f lda $44
.9a11 jsr $085d
.9a14 jmp 9000