* * Ultima II: The Revenge of the Enchanteress * * (c) 1982, Sierra On-Line * (s) 2020, John Disam * TYP BIN ORG $5000 MX %11 LST OFF *---------------------------- UPDATE = $0240 ; CALL UPDATE PRINTSTR = $402C ; PRINT C STRING KBD EQU $C000 KBDSTROBE EQU $C010 SPKR EQU $C030 TXTCLR EQU $C050 TXTSET EQU $C051 MIXSET EQU $C053 HIRES EQU $C057 PRNTAX EQU $F941 HOME EQU $FC58 PRBYTE EQU $FDDA COUT EQU $FDED *---------------------------- L5000 JSR HOME LDY #$0C LDX #$0A JSR $458A JSR PRINTSTR ASC "(INSERT PLAYER DISK)"00 BIT KBDSTROBE L5025 LDA KBD CMP #$9B BNE L5025 BIT KBDSTROBE JSR PRINTSTR ASC 0D ASC 04 ASC "BLOAD PLAYER"0D00 LDA $4E00 BNE L5076 JSR HOME LDY #$0C LDX #$0A JSR $458A JSR PRINTSTR ASC "NO CHARACTER ON DISK"00 L5069 LDA KBD CMP #$9B BNE L5069 BIT KBDSTROBE JMP L5000 L5076 JSR L6706 BIT KBDSTROBE LDA $4E11 ASL CLC ADC #$78 STA $11 LDA #$00 STA $D9 STA $DA STA $DB STA $DC LDA $4E24 STA $00 LDA $4E25 STA $01 LDA $4E33 BEQ L50AF LDA $4E34 STA $F4 LDA $4E35 STA $F5 JSR $437B LDA #$50 STA ($06),Y L50AF LDX #$FF LDA #$FF L50B3 DEX STA $4B00,X STA $4C00,X BNE L50B3 JSR UPDATE LDA MIXSET LDA HIRES LDA TXTCLR JSR HOME LDA #$FF STA $10 JSR $44DE L50D2 LDA $4E14 CMP #$04 BCC L50DC JMP L6CCE L50DC JSR PRINTSTR ASC "CMD: "00 JSR L6900 JSR L6900 JSR L6900 JSR L6900 JSR L6855 LDA #$00 STA $F2 LDA #$E8 STA $F3 LDA $DC BEQ L511A LDA #$14 STA $FC L5104 JSR PRINTSTR ASC "Z"00 LDX #$FF L510B DEX NOP NOP NOP NOP NOP BNE L510B DEC $FC BNE L5104 JMP L528B L511A LDA KBD BMI L5175 INC $F2 BNE L511A LDA $11 CMP #$26 BNE L512C JSR $43E9 L512C JSR UPDATE JSR L6900 JSR L6900 JSR L6900 JSR L6900 JSR L6855 INC $4E INC $F3 BNE L511A INC $4F LDA #$00 STA $FB JSR PRINTSTR ASC "PASS"00 L5152 SED SEC LDA $4E1F SBC #$0A STA $4E1F LDA $4E1E SBC #$00 STA $4E1E LDA $4E1D SBC #$00 STA $4E1D CLD BCS L5172 JMP L6703 L5172 JMP L528B L5175 STA $4E27 STA KBDSTROBE LDA $4E27 CMP #$A0 BNE L5191 LDA #$00 STA $FB JSR PRINTSTR ASC "PASS"00 JMP L5152 L5191 CMP #$8D BNE L51B1 DEC $01 JSR PRINTSTR ASC "NORTH"00 LDA $13 JSR L69D3 CMP #$00 BEQ L51AE INC $01 JMP L5225 L51AE JMP L520F L51B1 CMP #$AF ; / BNE L51D1 INC $01 JSR PRINTSTR ASC "SOUTH"00 LDA $14 JSR L69D3 CMP #$00 BEQ L51CE DEC $01 JMP L5225 L51CE JMP L520F L51D1 CMP #$88 BNE L51F0 DEC $00 JSR PRINTSTR ASC "WEST"00 LDA $16 JSR L69D3 CMP #$00 BEQ L51ED INC $00 JMP L5225 L51ED JMP L520F L51F0 CMP #$95 BNE L5218 INC $00 JSR PRINTSTR ASC "EAST"00 LDA $15 JSR L69D3 CMP #$00 BEQ L520C DEC $00 JMP L5225 L520C JMP L520F L520F LDA $FB EOR #$FF STA $FB JMP L528B L5218 PHA LDA #$00 STA $FB PLA L521E CMP #$C1 BCS L523C JMP L66EA L5225 JSR PRINTSTR ASC "--INVALID MOVE!"8700 JMP L528B L523C CMP #$DB BCC L5243 JMP L66EA L5243 SEC SBC #$C1 ASL TAY LDA L5257,Y STA L5254+1 LDA L5257+1,Y STA L5254+2 L5254 JMP $FFFF L5257 DA L6F8B ; A DA L729D ; B DA L7407 ; C DA L75B5 ; D DA L75EE ; E DA L7816 ; F DA L7884 ; G DA L79A1 ; H DA L79B3 ; I DA L79F8 ; J DA L7A0D ; K DA L7ACE ; L DA L7D75 ; M DA L7DB1 ; N DA L7E0D ; O DA L7F69 ; P DA L7F74 ; Q DA L7FFB ; R DA L80BE ; S DA L81C7 ; T DA L8426 ; U DA L849F ; V DA L850C ; W DA L85D8 ; X DA L8634 ; Y DA L865E ; Z L528B LDA #$8D JSR COUT LDA #$00 STA $F3 STA $F1 STA $F2 LDA $4E14 BEQ L52C0 CMP #$01 BNE L52A4 JMP L5723 L52A4 CMP #$02 BNE L52AB JMP L5723 L52AB CMP #$03 BNE L52B2 JMP L5723 L52B2 CMP #$04 BNE L52B9 JMP L5809 L52B9 CMP #$05 BNE L52C0 JMP L5809 L52C0 LDX #$1F L52C2 LDA $4D60,X BEQ L52E6 LDA $11 CMP #$22 BNE L52EC LDA $FB BPL L52EC LDA $4D60,X CMP #$48 BEQ L52EC CMP #$3C BEQ L52EC CMP #$2C BEQ L52EC LDA $11 CMP #$22 BNE L52EC L52E6 DEX BNE L52C2 JMP L5472 L52EC JSR $401B STX $FA LDA $17 JSR $44D4 CMP #$03 BCS L5334 LDA $18 JSR $44D4 CMP #$03 BCS L5334 JSR $4592 LDX $FA CMP #$20 BCS L5334 LDA $4D60,X CMP #$34 BNE L5319 JSR L55A1 JMP L5334 L5319 CMP #$38 BNE L5323 JSR L55EF JMP L5334 L5323 CMP #$F8 BNE L532D JSR L563C JMP L5334 L532D CMP #$3C BNE L5334 JSR L5668 L5334 LDX $FA JSR $4000 LDA $4D40,X CMP #$0F BCS L534E SEC LDA #$00 SBC $17 STA $17 SEC LDA #$00 SBC $18 STA $18 L534E CLC LDA $4D00,X ADC $17 AND #$3F CMP $00 BEQ L535D JMP L65E9 L535D CLC LDA $4D20,X ADC $18 AND #$3F CMP $01 BEQ L536C JMP L65E9 L536C INC $F1 STX $FC LDA $4D60,X CMP #$FC BNE L537A JSR L56E7 L537A JSR $4592 LDX $FC CMP #$00 BMI L539D AND #$07 CMP $4E2C BCC L539D INC $F2 LDA $4D40,X LSR LSR SEC ADC $F3 LDY $12 CPY #$06 BNE L539B ASL L539B STA $F3 L539D LDA $4E14 BEQ L53A5 JMP L573E L53A5 JMP L52E6 L53A8 JSR UPDATE L53AB LDA $F1 BEQ L53D0 LDA #$7E STA $A0 LDA #$00 STA $A1 LDA #$6F STA $A2 JSR $43AF DEC $F1 DEC $F2 BMI L53AB JSR $45E1 JSR $4419 JSR $45E1 JMP L53AB L53D0 LDA $F3 BEQ L5409 JSR $4592 AND $F3 AND #$77 CLC ADC #$01 STA $F3 SED SEC LDA $4E1C SBC $F3 STA $4E1C LDA $4E1B SBC #$00 STA $4E1B CLD BCC L5437 LDA $4E14 BEQ L5409 STA $F3 SED SEC LDA $4E1B SBC $F3 STA $4E1B CLD BCC L5437 L5409 JSR $44DE LDA #$04 STA $10 LDA $4E14 BNE L541C LDA #$FF STA $10 JSR L6C3C L541C LDA $DA BEQ L5422 DEC $DA L5422 LDA $DB BEQ L5428 DEC $DB L5428 LDA $DC BEQ L542E DEC $DC L542E LDA $D9 BEQ L5434 DEC $D9 L5434 JMP L50D2 L5437 LDA #$00 STA $4E1B STA $4E1C STA $4E1D STA $4E1E STA $4E1F STA $4E20 STA $4E21 STA $4E22 STA $4E23 JSR $44DE JSR PRINTSTR ASC 8D8D8D00 JSR $4084 JSR PRINTSTR ASC " IS DEAD!"8D00 L546F JMP L546F L5472 LDX #$1F L5474 LDA $4D60,X BEQ L547F DEX BNE L5474 JMP L53A8 L547F STX $F0 JSR $4592 CMP #$3F BCC L548B JMP L53A8 L548B LDX $F0 STA $4D00,X STA $F4 JSR $4592 AND #$3F BCC L549C JMP L53A8 L549C LDX $F0 STA $4D20,X STA $F5 JSR $437B LDX $F0 STA $4D80,X INC $4E2A LDA $4E2A LSR BCS L54CC LSR BCS L54E2 LSR BCS L54F8 LSR BCS L550E LSR BCS L5533 LSR BCS L552A LSR BCS L552D LSR BCS L5530 JMP L558B L54CC LDA $4D80,X CMP #$08 BNE L5524 LDA #$30 STA ($06),Y STA $4D60,X LDA #$10 STA $4D40,X JMP L53A8 L54E2 LDA $4D80,X CMP #$08 BNE L5524 LDA #$FC STA ($06),Y STA $4D60,X LDA #$20 STA $4D40,X JMP L53A8 L54F8 LDA $4D80,X CMP #$08 BNE L5524 LDA #$34 STA ($06),Y STA $4D60,X LDA #$40 STA $4D40,X JMP L53A8 L550E LDA $4D80,X CMP #$00 BNE L5524 LDA #$2C STA ($06),Y STA $4D60,X LDA #$40 STA $4D40,X JMP L53A8 L5524 DEC $4E2A JMP L53A8 L552A JMP L5549 L552D JMP L555F L5530 JMP L5575 L5533 LDA $4D80,X CMP #$08 BNE L5524 LDA #$F0 STA ($06),Y STA $4D60,X LDA #$80 STA $4D40,X JMP L53A8 L5549 LDA $4D80,X CMP #$00 BNE L5524 LDA #$48 STA ($06),Y STA $4D60,X LDA #$A0 STA $4D40,X JMP L53A8 L555F LDA $4D80,X CMP #$08 BNE L5524 LDA #$38 STA ($06),Y STA $4D60,X LDA #$C0 STA $4D40,X JMP L53A8 L5575 LDA $4D80,X CMP #$08 BNE L5524 LDA #$F8 STA ($06),Y STA $4D60,X LDA #$E0 STA $4D40,X JMP L53A8 L558B LDA $4D80,X CMP #$08 BNE L5524 LDA #$3C STA ($06),Y STA $4D60,X LDA #$FF STA $4D40,X JMP L53A8 L55A1 JSR PRINTSTR ASC "LEGS PARALIZED!"0D00 JSR $404D JSR $44A7 JSR $404D LDA $4EA3 BEQ L55E7 JSR $4592 CMP #$40 BCC L55E7 JSR PRINTSTR ASC "SAVED BY MAGICAL BOOTS!"8D00 RTS L55E7 JSR $4592 AND #$0F STA $DA RTS L55EF JSR PRINTSTR ASC "ARMS PARALIZED!"0D00 JSR $404D JSR $44A7 JSR $404D LDA $4EA4 BEQ L5634 JSR $4592 CMP #$40 BCC L5634 JSR PRINTSTR ASC "SAVED BY MAGICAL CLOAK"8D00 RTS L5634 JSR $4592 AND #$0F STA $DB RTS L563C JSR PRINTSTR ASC "MAGIC MISSILE!"0D00 JSR $404D JSR $44A7 JSR $404D INC $F1 INC $F1 INC $F2 INC $F2 CLC LDA $F3 ADC #$40 STA $F3 RTS L5668 JSR PRINTSTR ASC "SLEEP SPELL!"0D00 JSR $404D JSR $44A7 JSR $404D LDA $4EAE BEQ L56A2 JSR $4592 CMP #$40 BCC L56A2 JSR PRINTSTR ASC "SAVED BY IDOL!"8D00 RTS L56A2 JSR $4592 AND #$0F STA $DC RTS L56AA JSR PRINTSTR ASC "MINAX CRIES: DIE FOOL!"8D00 LDA #$00 STA $17 STA $18 JSR $459D JSR $4419 JSR $459D SED SEC LDA $4E1B SBC #$01 STA $4E1B CLD BCS L56E6 BCS L56E6 JMP L5437 L56E6 RTS L56E7 JSR $4592 CMP #$40 BCC L56EF RTS L56EF JSR $4592 AND #$0F TAX LDA $4EA0,X BEQ L5722 SED SEC LDA $4EA0,X SBC #$01 STA $4EA0,X CLD JSR PRINTSTR ASC "A THIEF STOLE SOMETHING!"8D00 L5722 RTS L5723 LDX #$1F L5725 STX $F6 LDA $4D60,X BEQ L573E LDA $4DA0,X BEQ L573E BMI L573E CMP #$03 BCS L5773 CMP #$02 BEQ L576A JMP L5770 L573E LDA $4D60,X CMP #$40 BNE L5762 LDA $4D00,X SEC SBC $00 JSR $44D4 CMP #$04 BCS L5762 LDA $4D20,X SEC SBC $01 JSR $44D4 CMP #$04 BCS L5762 JSR L56AA L5762 LDX $F6 DEX BPL L5725 JMP L53A8 L576A JSR $4000 JMP L65E9 L5770 JMP L52EC L5773 LDX $F6 LDA $4DC0,X STA $17 LDA $4DE0,X STA $18 JSR $4592 CMP #$40 BCS L57A0 JSR $4592 JSR $44BD LDX $F6 STA $4DC0,X STA $17 JSR $4592 JSR $44BD LDX $F6 STA $4DE0,X STA $18 L57A0 LDX $F6 CLC LDA $4D00,X ADC $17 AND #$3F STA $F4 CMP #$04 BCS L57B3 JMP L573E L57B3 CMP #$3C BCC L57BA JMP L573E L57BA CMP $00 BNE L57C1 JMP L573E L57C1 CLC LDA $4D20,X ADC $18 AND #$3F STA $F5 CMP #$04 BCS L57D2 JMP L573E L57D2 CMP #$3C BCC L57D9 JMP L573E L57D9 CMP $01 BNE L57E0 JMP L573E L57E0 JSR $437B CMP #$70 BEQ L57EE CMP #$08 BEQ L57EE JMP L573E L57EE LDX $F6 JMP L669B L57F3 LDA $4E14 BNE L57F9 RTS L57F9 LDX #$07 LDA #$01 L57FD STA $4DA0,X DEX BPL L57FD LDX $F1 STA $4DA0,X RTS L5809 JSR L5A74 LDX #$1F STX $F0 L5810 LDA $4D60,X BNE L581E L5815 DEC $F0 LDX $F0 BNE L5810 JMP L58D5 L581E LDX $F0 JSR L5AE0 LDA $4D40,X CMP #$0F BCS L5838 SEC LDA #$00 SBC $17 STA $17 SEC LDA #$00 SBC $18 STA $18 L5838 LDA $17 BEQ L5863 CLC ADC $4D00,X STA $F4 LDA $4D20,X STA $F5 LDA $F4 CMP $00 BNE L5856 LDA $F5 CMP $01 BNE L5856 JMP L5951 L5856 JSR L5A53 BEQ L5891 CMP #$FF BEQ L5863 AND #$7F BNE L5891 L5863 LDA $18 BEQ L588E CLC ADC $4D20,X STA $F5 LDA $4D00,X STA $F4 LDA $F4 CMP $00 BNE L5881 LDA $F5 CMP $01 BNE L5881 JMP L5951 L5881 JSR L5A53 BEQ L5891 CMP #$FF BEQ L588E AND #$7F BNE L5891 L588E JMP L5815 L5891 JSR L5A5D AND #$07 BEQ L589B JMP L5815 L589B LDA $F4 STA $4DC0,X LDA $F5 STA $4DE0,X LDA $4D00,X STA $F4 LDA $4D20,X STA $F5 JSR L5A5D LDA ($06),Y AND #$F0 STA ($06),Y LDA $4DC0,X STA $F4 STA $4D00,X LDA $4DE0,X STA $F5 STA $4D20,X JSR L5A5D LDA ($06),Y ORA $4D60,X STA ($06),Y JMP L5815 L58D5 LDA $FB BNE L58EE JSR L5917 JSR PRINTSTR ASC "IT'S DARK!"8D00 JMP L5909 L58EE DEC $FB BNE L5909 JSR PRINTSTR ASC "TORCH BURNED OUT!"878D00 L5909 JSR $8900 LDA #$10 JSR L592E JSR $44DE JMP L50D2 L5917 LDA #$3F ; DARKNESS STA $07 LDA #$00 STA $06 TAY L5920 STA ($06),Y DEY BNE L5920 DEC $07 LDX $07 CPX #$20 BCS L5920 RTS L592E STA $F1 SED SEC LDA $4E1F SBC $F1 STA $4E1F LDA $4E1E SBC #$00 STA $4E1E LDA $4E1D SBC #$00 STA $4E1D CLD BCS L5950 JMP L5437 L5950 RTS L5951 JSR $4592 CMP #$40 BCS L597C LDX $F0 LDA $F6 CMP $4D80,X BEQ L5964 JMP L5815 L5964 LDA $4D60,X CMP #$02 BNE L596E JMP L59CF L596E CMP #$05 BNE L5975 JMP L59F8 L5975 CMP #$07 BNE L597C JMP L5A2B L597C LDX $F0 LDA $F6 CMP $4D80,X BEQ L5988 JMP L5815 L5988 JSR $43AF JSR $4592 BMI L5997 AND #$07 CMP $4E2C BCS L599A L5997 JMP L5815 L599A JSR $404D JSR $4419 JSR $404D JSR $4592 AND #$77 STA $F1 LDA $F6 ASL ASL AND #$77 SED ADC $F1 STA $F1 SEC LDA $4E1C SBC $F1 STA $4E1C LDA $4E1B SBC #$00 STA $4E1B CLD BCS L59CC JMP L5437 L59CC JMP L5815 L59CF LDA $FB BEQ L59F5 JSR PRINTSTR ASC "YOUR TORCH IS BLOWN OUT!"878D00 LDA #$00 STA $FB L59F5 JMP L5815 L59F8 JSR PRINTSTR ASC "A GREMLIN STOLE SOME FOOD!"878D00 SED SEC LDA $4E1D SBC #$01 STA $4E1D CLD BCC L5A28 JMP L5815 L5A28 JMP L5437 L5A2B JSR PRINTSTR ASC "YOU FEEL A STRONG MAGIC!"878D00 JSR $4592 AND #$07 STA $DC JMP L5815 L5A53 LDA $F6 CMP $4D80,X BEQ L5A5D LDA #$FF RTS L5A5D LDA $4D80,X L5A60 CLC ADC #$10 STA $07 LDA $F5 ASL ASL ASL ASL ADC $F4 STA $06 LDY #$00 LDA ($06),Y RTS L5A74 LDX #$1F L5A76 STX $F0 LDA $4D60,X BEQ L5A83 L5A7D LDX $F0 DEX BNE L5A76 RTS L5A83 JSR $4592 LDX $F0 AND #$07 ASL ORA #$01 STA $4D00,X STA $F4 JSR $4592 LDX $F0 AND #$07 ASL ORA #$01 STA $4D20,X STA $F5 TXA LSR STA $4D80,X JSR L5A5D BNE L5A7D JSR $4592 LDX $F0 AND #$07 CMP #$07 BEQ L5ABE ASL CMP $4D80,X BEQ L5AC1 BCC L5AC1 L5ABE JMP L5A7D L5AC1 LSR ADC #$01 STA $4D60,X ASL ADC $4D80,X ASL ASL ASL ORA #$10 STA $4D40,X JSR L5A5D LDA ($06),Y ORA $4D60,X STA ($06),Y JMP L5A7D L5AE0 LDA $00 SEC SBC $4D00,X JSR $44BD STA $17 LDA $01 SEC SBC $4D20,X JSR $44BD STA $18 RTS L5AF7 TAY LDA #$00 STA $FC LDA #$4F STA $FD LDX #$00 L5B02 LDA ($FC,X) BEQ L5B0C L5B06 JSR L5B20 JMP L5B02 L5B0C DEY BEQ L5B12 JMP L5B06 L5B12 JSR L5B20 LDA ($FC,X) BEQ L5B1F JSR COUT JMP L5B12 L5B1F RTS L5B20 LDA $FC CLC ADC #$01 STA $FC LDA $FD ADC #$00 STA $FD RTS L5B2E LDA $00 CMP #$20 BCC L5B3D LDA $01 CMP #$20 BCC L5B46 JMP L5B60 L5B3D LDA $01 CMP #$20 BCC L5B53 JMP L5B6D L5B46 LDA $4E14 CMP #$02 BNE L5B50 JMP L6268 L5B50 JMP L5D1B L5B53 LDA $4E14 CMP #$02 BNE L5B5D JMP L6384 L5B5D JMP L6036 L5B60 LDA $4E14 CMP #$02 BNE L5B6A JMP L6495 L5B6A JMP L5DBC L5B6D LDA $4E14 CMP #$02 BNE L5B77 JMP L5B7A L5B77 JMP L5F17 L5B7A JSR PRINTSTR ASC "WELCOME TO THE PUB!"0D ASC "1-BUY, 2-TIP --- "00 JSR L653E CMP #$01 BEQ L5BB1 CMP #$02 BEQ L5BE3 JMP L528B L5BB1 LDA #$05 STA $FD LDA #$00 STA $FC JSR L655D JSR PRINTSTR ASC "HERE, HAVE A STRONG ONE!"0D00 JSR $4592 AND #$03 LDA #$01 JMP L5C12 L5BE3 JSR PRINTSTR ASC "TIP HOW MUCH? "00 JSR L653E STA $F6 STA $FD LDA #$00 STA $FC JSR L655D JSR $4592 JSR $44BD CLC ADC $F6 CMP #$0A BCC L5C12 LDA #$00 L5C12 STA $F6 JSR PRINTSTR ASC "THE BARKEEP SAYS:"0D00 LDA $F6 TAY INY LDA #L5C3E STA $FD LDX #$00 JSR L5B02 JMP L528B L5C3E ASC 00 ASC "CAUGH..."00 ASC "ISN'T THIS A GREAT GAME?"00 ASC "HHMMM..."00 ASC "SOME FIGHTERS WEAR MAGIC HELMS!"00 ASC "AVIATORS USE SKULL KEYS!"00 ASC "SAYLORS WEAR BLUE TASSLES!"00 ASC "MAGES CARRY WANDS OR STAFFS!"00 ASC "GUARDS CARRY KEYS!"00 ASC "ANKHS OPEN SPACE!"00 ASC "PLANES NEED BRASS BUTTONS!"00 L5D1B JSR PRINTSTR ASC "THE FOOD HERE COSTS "00 LDA #$03 JSR L65A9 LDA $FC LDX $FD JSR PRNTAX JSR PRINTSTR ASC 8D ASC "PER 100, WANT ONE? "00 L5D57 LDA KBD BPL L5D57 BIT KBDSTROBE CMP #$D9 BEQ L5D6C JSR PRINTSTR ASC "NO"00 JMP L528B L5D6C JSR PRINTSTR ASC "YES,"8D ASC "NO ONIONS AND TO GO PLEASE!"8D00 JSR L655D SED CLC LDA $4E1D ADC #$01 STA $4E1D CLD JSR PRINTSTR ASC "THANK YOU, COME AGAIN!"00 JMP L528B L5DBC LDA $4E11 CMP #$01 BEQ L5DE3 JSR $4084 JSR PRINTSTR ASC " YOU ARE NOT A CLERIC!"00 JMP L528B L5DE3 JSR PRINTSTR ASC "WELCOME "00 LDA $4E10 CMP #$01 BEQ L5E05 JSR PRINTSTR ASC "BROTHER "00 JMP L5E10 L5E05 JSR PRINTSTR ASC "SISTER "00 L5E10 JSR $4084 JSR PRINTSTR ASC 8D ASC "1-LIGHT, 2-L.D., 3-L.U.,"8D ASC "4-PASS 5-SURFACE, 6-PRAYER."8D ASC "YOUR INTEREST? "00 JSR L653E BEQ L5E68 CMP #$07 BCS L5E68 JMP L5E88 L5E68 JSR PRINTSTR ASC "FOLLOW THE LIGHT, FRIEND!"00 JMP L528B L5E88 STA $F0 JSR PRINTSTR ASC "FIVE "00 LDA $F0 CLC ADC #$24 JSR $409C JSR PRINTSTR ASC "S FOR "00 LDA $F0 JSR L65A9 LDA $FC LDX $FD JSR PRNTAX JSR PRINTSTR ASC 8D ASC "YES, FRIEND? "00 L5EC3 LDA KBD BPL L5EC3 BIT KBDSTROBE CMP #$D9 BEQ L5EED JSR PRINTSTR ASC "NO"8D ASC "I'M SORRY, GOOD DAY."00 JMP L528B L5EED JSR PRINTSTR ASC "YES,"8D ASC "I WILL TAKE 5!"00 JSR L655D LDX $F0 LDA $4E80,X CLC SED ADC #$05 CLD STA $4E80,X JMP L528B L5F17 JSR $4084 LDA $4E11 CMP #$02 BEQ L5F3E JSR PRINTSTR ASC " YOU ARE NOT A WIZARD!"00 JMP L528B L5F3E JSR PRINTSTR ASC " MUSERREF OLDUM!"8D ASC "1-LIGHT, 2-L.D., 3-L.U.,"8D ASC "4-M.M., 5-BLINK, 6-KILL,"8D ASC "BIR IKI UC...? "00 JSR L653E BEQ L5FA0 CMP #$07 BCS L5FA0 JMP L5FB5 L5FA0 JSR PRINTSTR ASC 8D ASC "UGURLA OLSUN!"00 JMP L528B L5FB5 CMP #$04 BCC L5FBC CLC ADC #$03 L5FBC STA $F0 JSR PRINTSTR ASC "FIVE "00 LDA $F0 CLC ADC #$24 JSR $409C JSR PRINTSTR ASC "S FOR "00 LDA $F0 JSR L65A9 LDA $FC LDX $FD JSR PRNTAX JSR PRINTSTR ASC 8D ASC "LUTFEN EVET? "00 L5FF7 LDA KBD BPL L5FF7 BIT KBDSTROBE CMP #$D9 ; Y BEQ L600D JSR PRINTSTR ASC "NO!"00 JMP L5FA0 L600D JSR PRINTSTR ASC "YES"8D00 JSR L655D SED CLC LDX $F0 LDA $4E80,X ADC #$05 STA $4E80,X CLD JSR PRINTSTR ASC "GULE GULE!"00 JMP L528B L6036 JSR PRINTSTR ASC "TIME AND TRAVEL MADE ME WISE,"0D ASC "PRECIOUS GOLD, A CLUE IT BUYS!HOW MUCH " ASC "WILL YOU PAY *100?"00 JSR L653E STA $F0 STA $FC LDA #$00 STA $FD JSR L655D LDY $F0 INY LDA #L60B5 STA $FD LDX #$00 JSR L5B02 JMP L528B JMP L528B L60B5 ASC 00 ASC "ASK ME NO QUESTIONS,"8D ASC "I'LL TELL YOU NO LIES."00 ASC "THE QUEEN IS THE KING"8D ASC "AND THE KING IS A SPY."00 ASC "THE EVIL MEN DO"8D ASC "IS A HORRABLE THING."00 ASC "BUT DISPELLING MEANS"8D ASC "THAT YOU MUST HAVE THE RING."00 ASC "JUST WHERE IT IS,"8D ASC "I CANNOT SAY."00 ASC "BUT I'LL TELL YOU RIGHT NOW,"8D ASC "THERE IS NO OTHER WAY."00 ASC "I HEAR IN A TOWN"8D ASC "WHERE THE WATER RUNS FREE."00 ASC "THERE IS AN OLD MAN"8D ASC "LIVING UNDER A TREE."00 ASC "HE HAS NOT A NAME"8D ASC "BUT HE DOES HAVE A CLUE"00 ASC "MAYHAPS IF YOU FIND HIM,"8D ASC "HE'LL TELL IT TO YOU!"00 L6268 JSR PRINTSTR ASC " THE ARMOUR SHOPPE:"0D ASC "1-CLOTH, 2-LEATHER, 3-CHAIN,"0D ASC "4-PLATE, 5-REFLECT, 6-POWER,"0D ASC "YOUR INTEREST? "00 JSR L653E BEQ L62D9 CMP #$07 BCS L62D9 JMP L62F7 L62D9 JSR PRINTSTR ASC "THANKS FOR COMING BY..."00 JMP L528B L62F7 STA $F0 JSR PRINTSTR ASC "AH! YES! "00 LDA $F0 CLC ADC #$1D JSR $409C JSR PRINTSTR ASC 0D ASC "FOR YOU ONLY "00 LDA $F0 ASL JSR L65A9 LDA $FC LDX $FD JSR PRNTAX JSR PRINTSTR ASC 0D ASC "HOW 'BOUT IT? "00 L6340 LDA KBD BPL L6340 BIT KBDSTROBE STA $F2 JSR COUT LDA #$8D JSR COUT LDA $F2 CMP #$D9 BEQ L6368 JSR PRINTSTR ASC "OH, WELL."00 JMP L528B L6368 JSR L655D JSR PRINTSTR ASC "SOLD!"00 LDX $F0 LDA $4E60,X SED CLC ADC #$01 CLD STA $4E60,X JMP L528B L6384 JSR PRINTSTR ASC " THE WEAPONS SHOPPE:"0D ASC "1-DA, 2-MA, 3-AX, 4-BO,"0D ASC "5-SW, 6-GR, 7-LI, 8-PH."0D ASC "YOUR INTEREST? "00 JSR L653E BEQ L63E9 CMP #$09 BEQ L63E9 JMP L6407 L63E9 JSR PRINTSTR ASC "THANKS FOR COMING BY..."00 JMP L528B L6407 STA $F0 JSR PRINTSTR ASC "AH! YES! A "00 LDA $F0 CLC ADC #$13 JSR $409C JSR PRINTSTR ASC 0D ASC "FOR YOU ONLY "00 LDA $F0 JSR L65A9 LDA $FC LDX $FD JSR PRNTAX JSR PRINTSTR ASC 0D ASC "HOW 'BOUT IT? "00 L6451 LDA KBD BPL L6451 BIT KBDSTROBE STA $F2 JSR COUT LDA #$8D JSR COUT LDA $F2 CMP #$D9 ; Y BEQ L6479 JSR PRINTSTR ASC "OH, WELL."00 JMP L528B L6479 JSR L655D JSR PRINTSTR ASC "SOLD!"00 LDX $F0 LDA $4E40,X SED CLC ADC #$01 CLD STA $4E40,X JMP L528B L6495 JSR PRINTSTR ASC "WELCOME, TO THE TRANSPORT"0D ASC "SHOPPE. I SELL YOU HORSE "00 LDA #$04 JSR L65A9 LDA $FC LDX $FD JSR PRNTAX JSR PRINTSTR ASC 0D ASC "GOLD, DEAL, OK? --- "00 L64F1 LDA KBD BPL L64F1 PHA JSR COUT LDA #$8D JSR COUT PLA BIT KBDSTROBE CMP #$D9 ; Y BEQ L651F JSR PRINTSTR ASC 0D ASC "O.K. BYE THEN..."00 JMP L528B L651F JSR L655D JSR PRINTSTR ASC 8D ASC "RIDE SWIFTLY!"00 LDA #$22 STA $11 JMP L528B JMP L528B L653E LDA KBD CMP #$B0 BCC L653E CMP #$BA BCS L653E SEC SBC #$B0 TAX CLC ADC #$B0 JSR COUT LDA #$8D JSR COUT BIT KBDSTROBE TXA RTS L655D SED SEC LDA $4E23 SBC $FD STA $4E23 LDA $4E22 SBC $FC STA $4E22 BCS L65A5 CLC LDA $4E23 ADC $FD STA $4E23 LDA $4E22 ADC $FC STA $4E22 CLD PLA PLA JSR PRINTSTR ASC "YOU DONT HAVE THAT MUCH!"8700 JMP L528B L65A5 CLD LDA #$00 RTS L65A9 CLC ADC #$08 STA $F1 LDA #$00 STA $FC STA $FA LDA #$04 STA $FD STA $FB LDA $4E1A ADC $4E18 LDY #$00 L65C2 INY LSR BNE L65C2 LDA $F1 STY $F1 SEC SBC $F1 TAX SED L65CF CLC LDA $FB ADC $FD LDY $FD STY $FB STA $FD LDA $FA ADC $FC LDY $FC STY $FA STA $FC DEX BNE L65CF CLD RTS L65E9 LDA $4D40,X CMP #$10 BCS L65F3 INC $4D40,X L65F3 CLC LDA $4D00,X ADC $17 AND #$3F STA $F4 CLC LDA $4D20,X ADC $18 AND #$3F STA $F5 JSR $437B JSR L6648 BNE L6612 JMP L669B L6612 LDA $18 BEQ L6626 LDA $4D00,X STA $F4 JSR $437B JSR L6648 BNE L6626 JMP L669B L6626 CLC LDA $4D00,X ADC $17 AND #$3F STA $F4 LDA $4D20,X STA $F5 JSR $437B JSR L6648 BEQ L669B L663D LDA $4E14 BEQ L6645 JMP L573E L6645 JMP L52E6 L6648 STA $F0 LDA $D9 BEQ L6651 JMP L6698 L6651 LDA $4D60,X CMP #$2C BEQ L667F CMP #$48 BEQ L667F CMP #$78 BCS L6666 LDA $F0 CMP #$5C BEQ L6688 L6666 LDA $F0 CMP #$10 BEQ L6698 CMP #$04 BEQ L6698 CMP #$00 BEQ L6698 CMP #$14 BCC L6688 CMP #$70 BEQ L6688 JMP L6698 L667F LDA $F0 CMP #$00 BNE L6698 JMP L6688 L6688 LDA $4E14 BEQ L6695 LDA $F4 BEQ L6698 LDA $F5 BEQ L6698 L6695 LDA #$00 RTS L6698 LDA #$FF RTS L669B LDA $00 CMP $F4 BNE L66AA LDA $01 CMP $F5 BNE L66AA JMP L663D L66AA LDA $F4 STA $FC LDA $F5 STA $FD LDA $4D00,X STA $F4 LDA $4D20,X STA $F5 JSR $437B LDA $4D80,X LDY #$00 STA ($06),Y LDA $FC STA $F4 STA $4D00,X LDA $FD STA $F5 STA $4D20,X JSR $437B STA $4D80,X LDA $4D60,X STA ($06),Y LDA $4E14 BEQ L66E7 JMP L573E L66E7 JMP L52E6 L66EA JSR PRINTSTR ASC 87 ASC "-ILLEGAL COMMAND!"00 JMP L528B L6703 JMP L5437 L6706 CLC LDA $4E13 ADC #$B0 STA L6721+$B STA L672F+$B LDA $4E14 ADC #$B0 STA L6721+$C STA L672F+$C JSR PRINTSTR ASC 0D L6721 ASC 04 ASC "BLOAD MAP FF"0D L672F ASC 04 ASC "BLOAD MON FF"0D00 RTS L673F CLC LDA $4E13 ADC #$B0 STA L6754+$B LDA $4E14 ADC #$B0 STA L6754+$C JSR PRINTSTR ASC 0D L6754 ASC 04 ASC "BLOAD TLK FF"0D00 RTS L6764 LDA $4E37 BEQ L676A RTS L676A CLC LDA $4E13 ADC #$B0 STA L678F+$B STA L67AB+$B LDA $4E14 ADC #$B0 STA L678F+$C STA L67AB+$C LDA $00 STA $4E24 LDA $01 STA $4E25 JSR PRINTSTR ASC 0D L678F ASC 04 ASC "BSAVE MAP FF,A$1000,L$1000"0D L67AB ASC 04 ASC "BSAVE MON FF,A$4D00,L$100"0D00 JSR PRINTSTR ASC 04 ASC "BSAVE PLAYER,A$4E00,L$100"0D00 RTS L67E7 LDA #$00 STA $F0 STA $F1 STA $17 STA $18 L67F1 LDA KBD BMI L6811 NOP NOP NOP NOP NOP INC $F0 BNE L67F1 INC $F1 BNE L67F1 PLA PLA JSR PRINTSTR ASC 87 ASC "PASS"00 JMP L528B L6811 BIT KBDSTROBE CMP #$8D BEQ L6827 CMP #$AF BEQ L6833 CMP #$95 BEQ L683F CMP #$88 BEQ L684A JMP L67F1 L6827 JSR PRINTSTR ASC "NORTH"00 DEC $18 RTS L6833 JSR PRINTSTR ASC "SOUTH"00 INC $18 RTS L683F JSR PRINTSTR ASC "EAST"00 INC $17 RTS L684A JSR PRINTSTR ASC "WEST"00 DEC $17 RTS L6855 LDX #$2E L6857 LDA $0800,X STA $F1 LDA $0880,X STA $F0 LDA $F1 STA $0880,X LDA $0900,X STA $F1 LDA $F0 STA $0900,X LDA $0980,X STA $F0 LDA $F1 STA $0980,X LDA $0A00,X STA $F1 LDA $F0 STA $0A00,X LDA $0A80,X STA $F0 LDA $F1 STA $0A80,X LDA $0B00,X STA $F1 LDA $F0 STA $0B00,X LDA $0B80,X STA $F0 LDA $F1 STA $0B80,X LDA $0C00,X STA $F1 LDA $F0 STA $0C00,X LDA $0C80,X STA $F0 LDA $F1 STA $0C80,X LDA $0D00,X STA $F1 LDA $F0 STA $0D00,X LDA $0D80,X STA $F0 LDA $F1 STA $0D80,X LDA $0E00,X STA $F1 LDA $F0 STA $0E00,X LDA $0E80,X STA $F0 LDA $F1 STA $0E80,X LDA $0F00,X STA $F1 LDA $F0 STA $0F00,X LDA $0F80,X STA $F0 LDA $F1 STA $0F80,X LDA $F0 STA $0800,X INX CPX #$30 BCS L68FF JMP L6857 L68FF RTS L6900 LDX #$00 L6902 LDA $0800,X STA $F1 LDA $0880,X STA $F0 LDA $F1 STA $0880,X LDA $0900,X STA $F1 LDA $F0 STA $0900,X LDA $0980,X STA $F0 LDA $F1 STA $0980,X LDA $0A00,X STA $F1 LDA $F0 STA $0A00,X LDA $0A80,X STA $F0 LDA $F1 STA $0A80,X LDA $0B00,X STA $F1 LDA $F0 STA $0B00,X LDA $0B80,X STA $F0 LDA $F1 STA $0B80,X LDA $0C00,X STA $F1 LDA $F0 STA $0C00,X LDA $0C80,X STA $F0 LDA $F1 STA $0C80,X LDA $0D00,X STA $F1 LDA $F0 STA $0D00,X LDA $0D80,X STA $F0 LDA $F1 STA $0D80,X LDA $0E00,X STA $F1 LDA $F0 STA $0E00,X LDA $0E80,X STA $F0 LDA $F1 STA $0E80,X LDA $0F00,X STA $F1 LDA $F0 STA $0F00,X LDA $0F80,X STA $F0 LDA $F1 STA $0F80,X LDA $F0 STA $0800,X INX CPX #$02 BCS L69AA JMP L6902 L69AA RTS L69AB CLC LDA $00 ADC $17 STA $F4 CLC LDA $01 ADC $18 STA $F5 LDX #$1F L69BB LDA $4D60,X BEQ L69CF LDA $4D00,X CMP $F4 BNE L69CF LDA $4D20,X CMP $F5 BNE L69CF RTS L69CF DEX BNE L69BB RTS L69D3 STA $FA LDA $4E14 BEQ L6A36 LDA $00 CMP #$40 BCS L69E9 LDA $01 CMP #$40 BCS L69E9 JMP L6A36 L69E9 LDA $4E24 STA $00 LDA $4E25 STA $01 LDA #$00 STA $4E14 JSR L6706 LDA $4E37 BEQ L6A14 LDA $4E34 STA $F4 LDA $4E35 STA $F5 JSR $437B LDA #$50 STA ($06),Y JMP L528B L6A14 JSR PRINTSTR ASC 04 ASC "BSAVE PLAYER,A$4E00,L$100"8D00 JMP L528B L6A36 LDA $FA AND #$7F CMP #$02 BNE L6A56 SED SEC LDA $4E1C SBC #$05 STA $4E1C LDA $4E1B SBC #$00 STA $4E1B CLD BCS L6A56 JMP L5437 L6A56 CMP #$2E BNE L6ABF LDA $4EA0 BEQ L6A83 JSR PRINTSTR ASC 8D ASC "RING PROTECTS FROM FIELD!"00 JSR $4419 JMP L6ABF L6A83 JSR PRINTSTR ASC 8D ASC "FIELD CAUSES 1000 DAMAGE!"00 LDA #$00 STA $17 STA $18 JSR $459D JSR $4419 JSR $459D SED LDA $4E1B SBC #$10 STA $4E1B CLD BCS L6ABF JMP L5437 L6ABF LDA $DA BEQ L6AD7 JSR PRINTSTR ASC "--PARALIZED!"0D00 LDA #$FF RTS L6AD7 LDA $11 CMP #$28 BNE L6AE0 JMP L6B6C L6AE0 CMP #$26 BNE L6AE7 JMP L6B76 L6AE7 CMP #$24 BNE L6AEE JMP L6B88 L6AEE CMP #$22 BNE L6B02 JSR $43E9 LDX #$FF L6AF7 LDY #$20 L6AF9 DEY BNE L6AF9 DEX BNE L6AF7 JMP L6B95 L6B02 JSR $43E9 LDX #$FF L6B07 LDY #$20 L6B09 DEY BNE L6B09 DEX BNE L6B07 JSR $43E9 SED SEC LDA $4E1F SBC #$19 STA $4E1F LDA $4E1E SBC #$00 STA $4E1E LDA $4E1D SBC #$00 STA $4E1D CLD BCS L6B32 JMP L6703 L6B32 LDA $FA AND #$7F CMP #$60 BNE L6B3D JMP L6BDA L6B3D CMP #$00 BEQ L6B70 CMP #$08 BEQ L6B70 CMP #$22 BEQ L6B73 CMP #$24 BEQ L6B73 CMP #$26 BEQ L6B73 CMP #$28 BEQ L6B73 CMP #$2A BEQ L6B73 CMP #$2C BEQ L6B73 CMP #$2E BEQ L6B73 CMP #$38 BEQ L6B73 CMP #$16 BCS L6B70 JMP L6B73 L6B6C JSR L6B70 RTS L6B70 LDA #$FF RTS L6B73 JMP L6BCB L6B76 JSR L6B95 CMP #$FF BEQ L6B70 LDA $FA AND #$7F CMP #$06 BEQ L6B70 JMP L6B73 L6B88 LDA $FA CMP #$00 BEQ L6B73 CMP #$80 BEQ L6B73 JMP L6B70 L6B95 SED SEC LDA $4E1F SBC #$19 STA $4E1F LDA $4E1E SBC #$00 STA $4E1E LDA $4E1D SBC #$00 STA $4E1D CLD BCS L6BB5 JMP L6703 L6BB5 JSR L6B02 CMP #$FF BEQ L6B70 LDA $FA AND #$7F CMP #$02 BEQ L6B70 CMP #$60 BEQ L6B70 JMP L6B73 L6BCB LDA $00 AND #$3F STA $00 LDA $01 AND #$3F STA $01 LDA #$00 RTS L6BDA LDA $11 STA $F0 LDA $00 STA $F4 LDA $01 STA $F5 JSR $437B LDA $4E3A STA ($06),Y CLC LSR STA $11 JSR UPDATE LDA $F0 STA $11 JSR $442A LDA $00 STA $4E24 LDA $01 STA $4E25 JSR L6764 LDA $4E38 LSR CMP $4E13 BCC L6C15 CLC ADC #$01 L6C15 STA $4E13 JSR L6706 CLC LDA $4E13 ASL ASL ASL ADC $4E38 TAX LDA L6CA6,X STA $00 INX LDA L6CA6,X STA $01 JSR UPDATE JSR $442A PLA PLA JMP L528B L6C3C LDA $4E37 BEQ L6C42 RTS L6C42 DEC $4E39 BEQ L6C48 RTS L6C48 CLC LDA $4E13 ASL ASL ASL STA $F0 ADC $4E38 TAX LDA L6CA6,X STA $F4 INX LDA L6CA6,X STA $F5 JSR $437B CMP #$C0 BNE L6C6E LDY #$00 LDA $4E3A STA ($06),Y L6C6E LDA #$08 STA $4E39 INC $4E38 INC $4E38 LDA $4E38 AND #$07 STA $4E38 CLC ADC $F0 TAX LDA L6CA6,X STA $F4 INX LDA L6CA6,X STA $F5 JSR $437B CMP #$14 BCC L6C98 RTS L6C98 STA $4E3A LDY #$00 LDA #$C0 STA ($06),Y LDA $F4 LDX $F5 RTS L6CA6 DA $381D DA $381F DA $3821 DA $3823 DA $0822 DA $1C2F DA $3824 DA $2514 DA $1010 DA $1830 DA $182A DA $3413 DA $3438 DA $0C1C DA $1721 DA $3414 DA $1712 DA $2232 DA $1834 DA $0B08 L6CCE LDA $DC BEQ L6CF2 JSR PRINTSTR ASC "CMD: "00 LDA #$14 STA $FC L6CDF JSR PRINTSTR ASC "Z"00 LDX #$FF L6CE6 DEX BNE L6CE6 DEC $FC BNE L6CDF DEC $DC JMP L528B L6CF2 JSR PRINTSTR ASC "CMD: "00 LDX #$FF LDY #$FF L6CFF LDA KBD BMI L6D21 PHA PLA PHA PLA PHA PLA PHA PLA PHA PLA PHA PLA DEX BNE L6CFF DEY BNE L6CFF JSR PRINTSTR ASC "PASS"00 JMP L528B L6D21 BIT KBDSTROBE CMP #$8D BNE L6D2B JMP L6D4A L6D2B CMP #$88 BNE L6D32 JMP L6DFC L6D32 CMP #$95 BNE L6D39 JMP L6E22 L6D39 CMP #$AF BNE L6D40 JMP L6E49 L6D40 CMP #$A0 BNE L6D47 JMP L6E80 L6D47 JMP L521E L6D4A JSR PRINTSTR ASC "ADVANCE"00 LDA $13 AND #$0F BEQ L6D6C L6D5B JSR PRINTSTR ASC "-BLOCKED!"8700 JMP L528B L6D6C LDA $13 CMP #$80 BEQ L6D5B CLC LDA $00 ADC $02 AND #$3F STA $00 CLC LDA $01 ADC $03 AND #$3F STA $01 JSR $4592 CMP $F6 BCC L6D8E JMP L528B L6D8E JSR L5917 LDA #$00 STA $FB JSR PRINTSTR ASC 8D ASC "ARGH! A TRAP!"8D00 LDA #$10 STA $F0 L6DAC LDY #$10 L6DAE BIT SPKR LDX $F0 L6DB3 DEX BNE L6DB3 DEY BNE L6DAE INC $F0 BNE L6DAC JSR $4419 JSR $4419 JSR $4419 JSR $4419 LDA $4E30 BNE L6DD1 JMP L5437 L6DD1 JSR PRINTSTR ASC "ESCAPED! BY USE OF TOOLS!"00 SED SEC LDA $4E30 SBC #$01 STA $4E30 CLD JMP L528B L6DFC JSR PRINTSTR ASC "TURN LEFT"00 LDA $03 BEQ L6E16 STA $02 LDA #$00 STA $03 JMP L528B L6E16 SEC SBC $02 STA $03 LDA #$00 STA $02 JMP L528B L6E22 JSR PRINTSTR ASC "TURN RIGHT"00 LDA $02 BEQ L6E3D STA $03 LDA #$00 STA $02 JMP L528B L6E3D SEC SBC $03 STA $02 LDA #$00 STA $03 JMP L528B L6E49 JSR PRINTSTR ASC "RETREAT"00 LDA $14 AND #$8F BEQ L6E6B JSR PRINTSTR ASC "-BLOCKED!"8700 JMP L528B L6E6B LDA $00 SEC SBC $02 AND #$3F STA $00 LDA $01 SEC SBC $03 AND #$3F STA $01 JMP L528B L6E80 JSR PRINTSTR ASC "PASS"00 JMP L528B L6E8B LDA #$00 STA L6F89 STA L6F8A STA $17 STA $18 JSR L5917 L6E9A LDA L6F89 CLC ADC $17 AND #$3F STA $F4 LDA L6F8A CLC ADC $18 AND #$3F STA $F5 JSR $437B BNE L6EB6 JMP L6F5C L6EB6 CMP #$10 BEQ L6ED5 CMP #$78 BCC L6EC2 CMP #$F0 BCC L6ED5 L6EC2 CMP #$08 BEQ L6EFF CMP #$0C BEQ L6EF1 CMP #$04 BEQ L6F10 CMP #$70 BEQ L6F21 JMP L6F40 L6ED5 LDX #$00 LDY #$00 JSR L6F72 LDX #$00 LDY #$01 JSR L6F72 LDX #$02 LDY #$01 JSR L6F72 LDX #$02 LDY #$00 JSR L6F72 L6EF1 LDX #$01 LDY #$01 JSR L6F72 LDX #$03 LDY #$00 JSR L6F72 L6EFF LDX #$01 LDY #$00 JSR L6F72 LDX #$03 LDY #$01 JSR L6F72 JMP L6F5C L6F10 LDX #$01 LDY #$00 JSR L6F72 LDX #$03 LDY #$00 JSR L6F72 JMP L6F5C L6F21 LDX #$00 LDY #$00 JSR L6F72 LDX #$00 LDY #$01 JSR L6F72 LDX #$02 LDY #$00 JSR L6F72 LDX #$02 LDY #$01 JSR L6F72 JMP L6F5C L6F40 LDX #$01 LDY #$00 JSR L6F72 LDX #$02 LDY #$00 JSR L6F72 LDX #$02 LDY #$01 JSR L6F72 LDX #$01 LDY #$01 JSR L6F72 L6F5C INC $17 LDA $17 AND #$3F STA $17 BEQ L6F69 L6F66 JMP L6E9A L6F69 INC $18 LDA $18 CMP #$40 BCC L6F66 RTS L6F72 STX $02 STY $03 LDA $17 ASL ASL ADC $02 STA $F0 LDA $18 ASL ADC $03 STA $F1 JSR $4713 RTS L6F89 HEX 53 L6F8A HEX 4E L6F8B JSR PRINTSTR ASC "ATTACK--"00 LDA $4E14 CMP #$04 BCC L6FA1 JMP L719A L6FA1 LDA $DB BEQ L6FB7 JSR PRINTSTR ASC "PARALIZED!"8700 JMP L528B L6FB7 JSR L67E7 JSR $44B2 JSR L69AB STX $F1 CPX #$00 BNE L6FC9 JMP L718D L6FC9 JSR $4592 LSR CMP $4E16 BCC L6FD5 JMP L718D L6FD5 JSR $459D JSR L57F3 JSR PRINTSTR ASC "--HIT!!!"00 JSR $4408 LDA $4E2B ASL ASL ASL ADC $4E15 LSR LSR STA $F0 LDX $F1 L6FF9 SEC LDA $4D40,X SBC $F0 BCC L7061 STA $4D40,X JSR $459D LDA $4D60,X CMP #$40 BEQ L7011 JMP L528B L7011 JSR $404D JSR $442A JSR $404D LDX $F1 LDA $4D00,X STA $F4 LDA $4D20,X STA $F5 JSR $437B LDA $4D80,X STA ($06),Y LDA $F4 STA $4D20,X LDA $F5 STA $4D00,X STA $F4 LDA $4D20,X STA $F5 JSR $437B LDA $4D60,X STA ($06),Y LDA #$84 STA $4DA0,X JSR PRINTSTR ASC 8D ASC "SHE'S GONE!!!"00 JMP L528B L7061 LDA $4D00,X STA $F4 LDA $4D20,X STA $F5 JSR $437B LDY #$00 LDA $4D80,X STA ($06),Y LDA $4D60,X CMP #$40 BNE L708D JSR PRINTSTR ASC 8D04 ASC "BRUN END"8D JMP L528B L708D CMP #$60 BNE L709F SED CLC LDA $4E2F ADC #$02 STA $4E2F CLD JMP L711B L709F CMP #$FC BNE L70CF STX $F0 JSR $4592 CMP #$40 BCS L70B7 SED CLC LDA $4E30 ADC #$01 STA $4E30 CLD L70B7 JSR $4592 AND #$0F BEQ L70CA TAX SED CLC LDA $4EA0,X ADC #$01 STA $4EA0,X CLD L70CA LDX $F0 JMP L711B L70CF CMP #$F0 BNE L70FE STX $F0 JSR $4592 CMP #$40 BCS L70E7 SED CLC LDA $4EA5 ADC #$01 STA $4EA5 CLD L70E7 LDX $F0 JSR $4592 AND #$03 ADC #$01 SED CLC ADC $4E2E STA $4E2E CLD LDX $F0 JMP L711B L70FE CMP #$F8 BNE L711B STX $F0 JSR $4592 AND #$01 TAX INX SED CLC LDA $4EA0,X ADC #$01 STA $4EA0,X CLD LDX $F0 JMP L711B L711B LDA #$00 STA $4D80,X STA $4D40,X STA $4D00,X STA $4D20,X STA $4D60,X JSR PRINTSTR ASC 0D ASC "KILLED--GOLD+"00 JSR $4592 AND #$17 ORA #$01 STA $F0 JSR PRBYTE SED CLC LDA $4E23 ADC $F0 STA $4E23 LDA $4E22 ADC #$00 STA $4E22 CLD JSR PRINTSTR ASC "--EXP.+"00 JSR $4592 AND #$03 ADC #$01 STA $F0 JSR PRBYTE SED CLC LDA $4E21 ADC $F0 STA $4E21 LDA $4E20 ADC #$00 STA $4E20 CLD JSR $459D JMP L528B L718D JSR PRINTSTR ASC "--MISS"00 JMP L528B L719A JSR $44B2 LDA $00 CLC ADC $02 STA $F4 LDA $01 CLC ADC $03 STA $F5 LDA $F6 JSR L5A60 AND #$07 BNE L71B7 JMP L7292 L71B7 LDX #$1F STX $F0 L71BB LDA $4D00,X CMP $F4 BNE L71D3 LDA $4D20,X CMP $F5 BNE L71D3 LDA $4D80,X CMP $F6 BNE L71D3 JMP L71DC L71D3 DEC $F0 LDX $F0 BNE L71BB JMP L7292 L71DC JSR $4592 LSR CMP $4E16 BCC L71E8 JMP L7292 L71E8 JSR PRINTSTR ASC "HIT!"00 JSR $459D JSR $4408 JSR $459D LDA $4E2B ASL ASL ASL ADC $4E15 LSR LSR LDX $F0 STA $F1 LDA $4D40,X SEC SBC $F1 BCC L7216 STA $4D40,X JMP L528B L7216 LDA #$00 STA $4D40,X STA $4D60,X STA $4D80,X LDA $4D00,X STA $F4 LDA $4D20,X STA $F5 LDA $F6 JSR L5A60 LDA ($06),Y AND #$F0 STA ($06),Y JSR PRINTSTR ASC 8D ASC "KILLED--GOLD+"00 JSR $4592 AND #$17 ORA #$01 STA $F1 JSR PRBYTE SED CLC LDA $4E23 ADC $F1 STA $4E23 LDA $4E22 ADC #$00 STA $4E22 CLD JSR PRINTSTR ASC "--EXP.+"00 JSR $4592 AND #$07 STA $F1 JSR PRBYTE SED CLC LDA $4E21 ADC $F1 STA $4E21 LDA $4E20 ADC #$00 STA $4E20 CLD JMP L528B L7292 JSR PRINTSTR ASC "MISS"00 JMP L528B L729D JSR PRINTSTR ASC "BOARD"00 LDA $4E14 CMP #$04 BCC L72C5 L72AD JSR PRINTSTR ASC 8D ASC 87 ASC "THINK AGAIN "00 JSR $4084 JMP L528B L72C5 LDA $11 CMP #$78 BCC L72AD LDA $00 STA $F4 LDA $01 STA $F5 JSR $437B LDA $12 CMP #$22 BEQ L72FF CMP #$24 BEQ L72F6 CMP #$26 BEQ L72F9 CMP #$28 BEQ L72FC JSR PRINTSTR ASC " WHAT?"8700 JMP L528B L72F6 JMP L7316 L72F9 JMP L736E L72FC JMP L73B2 L72FF JSR PRINTSTR ASC " HORSE"00 LDA #$08 LDX #$00 STA ($06,X) LDA #$22 STA $11 JMP L528B L7316 LDA $4EAC BNE L7356 JSR PRINTSTR ASC " SHIP"8D ASC "THE CREW OF THIS SHIP"8D ASC "WILL NOT LET YOU BOARD!"8700 JMP L528B L7356 JSR PRINTSTR ASC " FRIGATE"00 LDA #$00 TAY STA ($06),Y LDA #$24 STA $11 JMP L528B L736E LDA $4EA9 BNE L739B JSR PRINTSTR ASC " PLANE"8D ASC "STRANGE YOU CAN'T GET IN!"8700 JMP L528B L739B JSR PRINTSTR ASC " PLANE"00 LDA #$08 LDY #$00 STA ($06),Y LDA #$26 STA $11 JMP L528B L73B2 JSR PRINTSTR ASC " ROCKET"00 LDA $4EA7 BNE L73FA JSR PRINTSTR ASC "A METALIC VOICE COMMANDS:"8D ASC "YOU MUST HAVE AN ANKH!"8700 JMP L528B L73FA LDA #$08 LDY #$00 STA ($06),Y LDA #$28 STA $11 JMP L528B L7407 JSR PRINTSTR ASC "CAST-"00 LDA $4E2D CLC ADC #$24 JSR $409C LDA $4EA1 CLC ADC $4EA2 BNE L7440 JSR PRINTSTR ASC 8D ASC "NEED WAND OR STAFF!"00 JSR $4399 JMP L528B L7440 LDA $4E2D BNE L7448 JMP L528B L7448 TAX LDA $4E80,X BNE L7462 JSR PRINTSTR ASC 8D ASC "NO SPELL!"00 JSR $4399 JMP L528B L7462 JSR $44A7 LDX $4E2D SED SEC LDA $4E80,X SBC #$01 STA $4E80,X CLD LDA $4E14 CMP #$04 BCS L748C JSR PRINTSTR ASC "-FAILED!"00 JSR $4399 JMP L528B L748C LDA $4E2D BNE L7494 JMP L528B L7494 CMP #$01 BEQ L74C3 CMP #$02 BEQ L74CA CMP #$03 BEQ L74F6 CMP #$04 BEQ L750E CMP #$05 BEQ L74B7 CMP #$06 BEQ L74BA CMP #$07 BEQ L74BD CMP #$08 BNE L74C0 JMP L7559 L74B7 JMP L7531 L74BA JMP L7534 L74BD JMP L753C L74C0 JMP L7580 L74C3 LDA #$96 STA $FB JMP L528B L74CA LDA $4E14 CMP #$04 BEQ L74FD L74D1 LDA $F6 CMP #$0F BCC L74E9 L74D7 JSR PRINTSTR ASC "-FAILED!"00 JSR $4399 JMP L528B L74E9 CLC ADC #$01 JSR L5A60 BNE L74D7 INC $F6 JMP L7A42 L74F6 LDA $4E14 CMP #$04 BEQ L74D1 L74FD LDA $F6 BEQ L7531 SEC SBC #$01 JSR L5A60 BNE L74D7 DEC $F6 JMP L7A42 L750E CLC LDA $00 ADC $02 AND #$0F BEQ L74D7 STA $F4 LDA $01 ADC $03 AND #$0F BEQ L74D7 STA $F5 LDA $F6 JSR L5A60 BPL L74D7 LDA #$00 STA ($06),Y JMP L528B L7531 JMP L7A58 L7534 JSR $4592 BMI L74D7 JMP L7580 L753C JSR L758B BEQ L74D7 LDA $4E20 ASL ADC #$1E STA $F1 LDA $4D40,X SBC $F1 STA $4D40,X BCS L7556 JMP L7216 L7556 JMP L528B L7559 JSR $4592 AND #$0F ORA #$01 STA $F4 JSR $4592 AND #$0F ORA #$01 STA $F5 LDA $F6 JSR L5A60 BEQ L7575 JMP L74D7 L7575 LDA $F4 STA $00 LDA $F5 STA $01 JMP L528B L7580 JSR L758B BNE L7588 JMP L74D7 L7588 JMP L7216 L758B LDX #$1F L758D LDA $4D60,X BNE L7598 L7592 DEX BNE L758D LDA #$00 RTS L7598 LDA $4D80,X CMP $F6 BNE L7592 LDA $00 CLC ADC $02 CMP $4D00,X BNE L7592 LDA $01 CLC ADC $03 CMP $4D20,X BNE L7592 TXA RTS L75B5 JSR PRINTSTR ASC "DESCEND"00 LDA $4E14 CMP #$05 BEQ L75D9 CMP #$04 BEQ L75D9 L75CB JSR PRINTSTR ASC "-WHAT?"8700 JMP L528B L75D9 LDA $12 AND #$20 BEQ L75CB LDA $4E14 CMP #$04 BNE L75E9 JMP L7A3E L75E9 INC $F6 JMP L7A42 L75EE JSR PRINTSTR ASC "ENTER"00 LDA $4E14 BEQ L7609 JSR PRINTSTR ASC " WHAT?"00 JMP L528B L7609 LDA $11 CMP #$78 BCS L7625 JSR PRINTSTR ASC "-ONLY ON FOOT!"8700 JMP L528B L7625 LDA $12 LSR SEC SBC #$05 BNE L7630 JMP L7660 L7630 SBC #$01 BNE L7637 JMP L7693 L7637 SBC #$01 BNE L763E JMP L76C3 L763E SBC #$01 BNE L7645 JMP L7709 L7645 SBC #$01 BNE L764C JMP L773B L764C SBC #$01 BNE L7653 JMP L7781 L7653 JSR PRINTSTR ASC " WHAT?"00 JMP L528B L7660 JSR PRINTSTR ASC "-VILLAGE"00 LDA $00 STA $4E24 LDA $01 STA $4E25 JSR L6764 LDA #$1F STA $00 LDA #$3E STA $01 LDA #$01 STA $4E14 JSR L6706 JSR L673F LDA #$04 STA $10 JMP L528B L7693 JSR PRINTSTR ASC "-TOWN"00 LDA $00 STA $4E24 LDA $01 STA $4E25 JSR L6764 LDA #$1F STA $00 LDA #$3E STA $01 LDA #$02 STA $4E14 JSR L6706 JSR L673F LDA #$04 STA $10 JMP L528B L76C3 JSR PRINTSTR ASC "-TOWER"00 LDA $00 STA $4E24 LDA $01 STA $4E25 JSR L6764 LDA #$00 STA $F6 STA $03 LDA #$01 STA $02 LDA #$05 STA $00 STA $01 LDA #$04 STA $4E14 JSR L6706 JSR PRINTSTR ASC 04 ASC "BLOAD MONSTERS!"00 JMP L528B L7709 JSR PRINTSTR ASC "-CASTLE"00 LDA $00 STA $4E24 LDA $01 STA $4E25 JSR L6764 LDA #$1F STA $00 LDA #$3E STA $01 LDA #$03 STA $4E14 JSR L6706 JSR L673F LDA #$04 STA $10 JMP L528B L773B JSR PRINTSTR ASC "-DUNGEON"00 LDA $00 STA $4E24 LDA $01 STA $4E25 JSR L6764 LDA #$00 STA $F6 STA $03 LDA #$01 STA $02 LDA #$05 STA $00 STA $01 STA $4E14 JSR L6706 JSR PRINTSTR ASC 04 ASC "BLOAD MONSTERS!"00 JMP L528B L7781 JSR PRINTSTR ASC "-THE SIGN READS:"0D00 LDX $4E13 BEQ L77BA DEX BEQ L77CF DEX BEQ L77EA DEX BEQ L7800 JSR PRINTSTR ASC "ANOS: 2112 A.D."00 JMP L528B L77BA JSR PRINTSTR ASC "ANOS: LEGENDS!"00 JMP L528B L77CF JSR PRINTSTR ASC "ANOS: 9,000,000 B.C."00 JMP L528B L77EA JSR PRINTSTR ASC "ANOS: 1423 B.C."00 JMP L528B L7800 JSR PRINTSTR ASC "ANOS: 1990 A.D."00 JMP L528B L7816 JSR PRINTSTR ASC "FIRE"00 LDA $11 CMP #$24 BEQ L7832 JSR PRINTSTR ASC " WHAT?"8700 JMP L528B L7832 JSR PRINTSTR ASC " DIRECT-"00 JSR L67E7 JSR L7862 JSR L69AB STX $F1 CPX #$00 BNE L7850 JMP L718D L7850 JSR $4592 ORA #$20 STA $F0 JSR $459D JSR $4408 LDX $F1 JMP L6FF9 L7862 LDX #$01 L7864 TXA TAY L7866 DEY NOP NOP NOP NOP BNE L7866 BIT SPKR INX BNE L7864 RTS L7874 LDA $00 STA $F4 LDA $01 STA $F5 JSR $437B LDA #$08 STA ($06),Y RTS L7884 JSR PRINTSTR ASC "GET"00 LDA $4E14 CMP #$04 BCC L7895 JMP L7902 L7895 LDA $12 CMP #$2A BEQ L78DE CMP #$2C BEQ L78AC JSR PRINTSTR ASC " WHAT?"00 JMP L528B L78AC JSR PRINTSTR ASC " WEAPON"00 JSR L7874 JSR $4592 AND #$07 BEQ L78D0 TAX SED CLC LDA $4E40,X ADC #$01 STA $4E40,X CLD JMP L528B L78D0 JSR PRINTSTR ASC " EMPTY!"00 JMP L528B L78DE JSR PRINTSTR ASC " ARMOUR"00 JSR L7874 JSR $4592 AND #$03 BEQ L78D0 TAX SED CLC LDA $4E60,X ADC #$01 STA $4E60,X CLD JMP L528B L7902 LDA $12 CMP #$40 BEQ L7915 JSR PRINTSTR ASC " WHAT?"00 JMP L528B L7915 JSR PRINTSTR ASC "CHEST!"8D ASC "IT CONTAINS "00 LDA $00 STA $F4 LDA $01 STA $F5 LDA $F6 JSR L5A60 LDA #$00 STA ($06),Y LDA $F6 CMP #$0F BEQ L7983 JSR $4592 CMP #$40 BCC L7972 JSR PRINTSTR ASC "GOLD!"00 JSR $4592 AND #$1F ADC $F6 ADC $F6 AND #$77 SED CLC ADC $4E23 STA $4E23 LDA $4E22 ADC #$00 STA $4E22 CLD JMP L528B L7972 LDA $F6 LSR BCC L797A JMP L78DE L797A JSR PRINTSTR ASC "A "00 JMP L78AC L7983 JSR PRINTSTR ASC "TRI-LITHIUM!"00 SED CLC LDA $4EAF ADC #$01 STA $4EAF CLD JMP L528B L79A1 JSR PRINTSTR ASC "HYPER WHAT?"00 JMP L528B L79B3 JSR PRINTSTR ASC "IGNITE TORCH"00 LDA $4E14 CMP #$04 BCS L79CD JMP L528B L79CD LDA $4E2E BNE L79E6 JSR PRINTSTR ASC 8D ASC "NONE OWNED!"8700 JMP L528B L79E6 SED SEC LDA $4E2E SBC #$01 STA $4E2E CLD LDA #$96 STA $FB JMP L528B L79F8 JSR PRINTSTR ASC "JUMP...WHEE..."00 JMP L528B L7A0D JSR PRINTSTR ASC "KLIMB"00 LDA $4E14 CMP #$05 BEQ L7A2E CMP #$04 BEQ L7A2E L7A21 JSR PRINTSTR ASC "-WHAT?"00 JMP L528B L7A2E LDA $12 AND #$10 BEQ L7A21 LDA $4E14 CMP #$04 BNE L7A3E JMP L75E9 L7A3E DEC $F6 BMI L7A58 L7A42 JSR PRINTSTR ASC 8D ASC "TO LEVEL "00 LDA $F6 JSR PRBYTE JMP L528B L7A58 LDA $4E24 STA $00 LDA $4E25 STA $01 LDX #$00 LDA #$FF L7A66 STA $4B00,X STA $4C00,X DEX BNE L7A66 LDA #$00 STA $4E14 JSR L6706 JSR PRINTSTR ASC 04 ASC "BLOAD SHAPES"8D00 LDA $4E24 STA $00 LDA $4E25 STA $01 LDA $4E37 BEQ L7AAC LDA $4E34 STA $F4 LDA $4E35 STA $F5 JSR $437B LDA #$50 STA ($06),Y JMP L528B L7AAC JSR PRINTSTR ASC 04 ASC "BSAVE PLAYER,A$4E00,L$100"8D00 JMP L528B L7ACE LDA $11 CMP #$26 BNE L7AD7 JMP L7C1B L7AD7 CMP #$28 BEQ L7AEE JSR PRINTSTR ASC "LAUNCH WHAT?"00 JMP L528B L7AEE JSR PRINTSTR ASC "LAUNCH--ROCKET"00 LDA $4EAF BNE L7B3D JSR PRINTSTR ASC 8D ASC "A METALLIC VOICE SAYS:"8D ASC "SHIP INCAPABLE OF LAUNCH!"00 JMP L528B L7B3D JSR PRINTSTR ASC 8D ASC "PREPARE FOR LAUNCH!"8D ASC 04 ASC "BLOAD STARS.OBJ"8D00 LDA $4E37 BNE L7B83 LDA $4E14 BNE L7B83 LDA $00 STA $4E34 LDA $01 STA $4E35 LDA #$01 STA $4E33 JSR L6764 L7B83 JSR $8900 JSR L6706 JSR PRINTSTR ASC 04 ASC "BLOAD DNGDRAW.OBJ"0D00 LDX #$00 LDA #$FF L7BA4 STA $4B00,X STA $4C00,X DEX BNE L7BA4 STX $00 STX $01 STA $10 JSR PRINTSTR ASC "(PRESS ANY KEY)"00 LDA KBDSTROBE L7BC9 LDA $01 CLC ADC #$02 AND #$3F STA $01 AND #$07 BNE L7BDD LDA $00 CLC ADC #$01 STA $00 L7BDD JSR UPDATE LDA KBD BPL L7BC9 BIT KBDSTROBE LDA $00 STA $F4 LDA $01 STA $F5 JSR $437B AND #$7F CMP #$08 BEQ L7BFC JMP L5437 L7BFC LDA $4E37 BNE L7C09 LDA #$00 STA $4E33 JMP L528B L7C09 LDA $00 STA $4E34 LDA $01 STA $4E35 LDA #$01 STA $4E33 JMP L528B L7C1B JSR PRINTSTR ASC "LAUNCH--PLANE"00 LDA $4EAB BNE L7C65 JSR PRINTSTR ASC 8D ASC "FUNNY THIS PLANE IS"8D ASC "MISSING A BRASS BUTTON!"8700 JMP L528B L7C65 LDA #$00 STA $F2 LDA #$FF STA $F3 JSR PRINTSTR ASC 0D ASC "CMD: "00 L7C77 JSR $43E9 LDA KBD BIT KBDSTROBE CMP #$8D BNE L7C87 JMP L7CCE L7C87 CMP #$AF BNE L7C8E JMP L7CE8 L7C8E CMP #$95 BNE L7C95 JMP L7D02 L7C95 CMP #$88 BNE L7C9C JMP L7D1B L7C9C CMP #$CC ; L BNE L7CA3 JMP L7D34 L7CA3 CLC LDA $00 ADC $F2 AND #$3F STA $00 CLC LDA $01 ADC $F3 AND #$3F STA $01 LDA $4E14 BEQ L7CC8 LDA $00 BEQ L7CC5 LDA $01 BEQ L7CC5 JMP L7CC8 L7CC5 JMP L69E9 L7CC8 JSR UPDATE JMP L7C77 L7CCE LDA #$00 STA $F2 LDA #$FF STA $F3 JSR PRINTSTR ASC "NORTH"0D ASC "CMD: "00 JMP L7CA3 L7CE8 LDA #$00 STA $F2 LDA #$01 STA $F3 JSR PRINTSTR ASC "SOUTH"0D ASC "CMD: "00 JMP L7CA3 L7D02 LDA #$01 STA $F2 LDA #$00 STA $F3 JSR PRINTSTR ASC "EAST"0D ASC "CMD: "00 JMP L7CA3 L7D1B LDA #$FF STA $F2 LDA #$00 STA $F3 JSR PRINTSTR ASC "WEST"0D ASC "CMD: "00 JMP L7CA3 L7D34 LDA $00 STA $F4 LDA $01 STA $F5 JSR $437B CMP #$08 BNE L7D55 JSR PRINTSTR ASC "LAND PLANE."00 JMP L528B L7D55 JSR PRINTSTR ASC "LAND--NOT HERE!!!!!"0D ASC "CMD: "00 JMP L7CA3 L7D75 JSR PRINTSTR ASC "MAGIC SPELL READY #"00 JSR L653E STA $4E2D JSR PRINTSTR ASC "SPELL READY => "00 LDA $4E2D CLC ADC #$24 JSR $409C JMP L528B L7DB1 JSR PRINTSTR ASC "NEGATE TIME"00 LDA $4EAD BNE L7DE5 JSR PRINTSTR ASC " HOW?"8D ASC "YOU'RE NOT EINSTEIN"00 JMP L528B L7DE5 SED SEC LDA $4EAD SBC #$01 STA $4EAD CLD JSR PRINTSTR ASC 8D ASC "YOU RUB A COIN..."00 LDA #$14 STA $D9 JMP L528B L7E0D JSR PRINTSTR ASC "OFFER GOLD DIRECT-"00 JSR L67E7 JSR L69AB STX $F0 LDA #$8D JSR COUT CPX #$00 BNE L7E49 JSR PRINTSTR ASC "OFFER TO WHOM?"00 JMP L528B L7E49 JSR PRINTSTR ASC "HOW MUCH (*100) ? "00 JSR L653E STA $FC LDA #$00 STA $FD JSR L655D LDX $F0 LDA $4DA0,X BPL L7E83 LDA $4E14 CMP #$02 BNE L7E83 LDA $4E13 CMP #$03 BNE L7E83 JMP L7E9E L7E83 JSR PRINTSTR ASC "THANK YOU VERY MUCH!"00 JMP L528B L7E9E LDX $F0 LDA $4DA0,X CMP #$81 BEQ L7EB2 CMP #$82 BEQ L7ED4 CMP #$83 BEQ L7F12 JMP L7F3A L7EB2 LDA $FC CMP #$05 BCC L7E83 JSR PRINTSTR ASC "ENILNO IS YOURS!"00 LDA #$01 STA $4E49 JMP L528B L7ED4 LDA $FC CMP #$05 BCC L7E83 LDA $4E36 BNE L7EF4 JSR PRINTSTR ASC "EARN THE RING!"00 JMP L528B L7EF4 JSR PRINTSTR ASC "THE RING IS YOURS!"00 LDA #$01 STA $4EA0 JMP L528B L7F12 JSR $4592 AND #$07 SED CLC TAX INX LDA $4E40,X ADC #$01 STA $4E40,X CLD JSR PRINTSTR ASC "HERE TAKE THIS!"00 JMP L528B L7F3A JSR $4592 AND #$07 CMP #$06 BCC L7F46 JMP L7E83 L7F46 TAX INX SED CLC LDA $4E15,X ADC $FC ADC $FC ADC $FC ADC $FC STA $4E15,X CLD JSR PRINTSTR ASC "ALAKAZAM!"00 JMP L528B L7F69 JSR PRINTSTR ASC "PASS"00 JMP L528B L7F74 JSR PRINTSTR ASC "QUIT OR SAVE GAME."00 LDA $4E14 BEQ L7FA6 JSR PRINTSTR ASC 8D ASC "ONLY OUTDOORS!"8700 JMP L528B L7FA6 LDA $4E37 BEQ L7FC2 JSR PRINTSTR ASC 8D ASC "ONLY ON EARTH!"8700 JMP L528B L7FC2 LDA $11 CMP #$78 BCS L7FDE JSR PRINTSTR ASC 8D ASC "ONLY ON FOOT!"8700 JMP L528B L7FDE JSR PRINTSTR ASC 8D ASC "ONE MOMENT PLEASE!"00 JSR L6764 JMP L528B L7FFB JSR PRINTSTR ASC "READY WEAPON:"0D ASC "1-DA, 2-MA, 3-AX, 4-BO,"0D ASC "5-SW, 6-GR, 7-LI, 8-PH."0D ASC "9-QU, WHICH? "00 JSR L653E STA $F0 CLC ADC #$13 JSR $409C LDX $F0 LDA $4E40,X BNE L8073 LDA $F0 BEQ L8073 JSR PRINTSTR ASC " NOT OWNED!"8700 JMP L528B L8073 LDA $F0 ASL ASL ASL CMP $4E16 BCC L80AB JSR PRINTSTR ASC " <-THOU ART NOT "8D ASC "AGILE ENOUGH TO WIELD!"00 JMP L528B L80AB JSR PRINTSTR ASC " READY."00 LDA $F0 STA $4E2B JMP L528B L80BE JSR PRINTSTR ASC "STEAL DIRECT-"00 JSR L67E7 CLC LDA $00 ADC $17 STA $F4 CLC LDA $01 ADC $18 STA $F5 LDA #$8D JSR COUT JSR $437B BMI L80EE CMP #$7C BNE L8106 L80EE CLC LDA $F4 ADC $17 STA $F4 CLC LDA $F5 ADC $18 STA $F5 JSR $437B CMP #$68 BNE L8106 JMP L811F L8106 JSR PRINTSTR ASC "NO LUCK!"00 JSR $4592 AND #$07 BNE L811C JSR L57F3 L811C JMP L528B L811F LDA $4E11 CMP #$03 BEQ L812B JSR $4592 BMI L8106 L812B JSR $4592 BMI L8106 LDA $4DA0 CMP #$01 BEQ L8106 LDA $4E14 CMP #$01 BEQ L8151 CMP #$02 BNE L8106 LDA $01 CMP #$20 BCS L8106 LDA $00 CMP #$20 BCS L817A JMP L81A0 L8151 LDA $01 CMP #$20 BCS L8106 LDA $00 CMP #$20 BCC L8106 JSR PRINTSTR ASC "STEAL FOOD!"00 SED CLC LDA $4E1D ADC #$01 STA $4E1D CLD JMP L528B L817A JSR PRINTSTR ASC "STEAL ARMOUR!"00 JSR $4592 AND #$03 TAX INX SED CLC LDA $4E60,X ADC #$01 STA $4E60,X CLD JMP L528B L81A0 JSR PRINTSTR ASC "STEAL WEAPONS!"00 JSR $4592 AND #$07 TAX INX SED CLC LDA $4E40,X ADC #$01 STA $4E40,X CLD JMP L528B L81C7 JSR PRINTSTR ASC "TRANSACT-"00 JSR L67E7 JSR L69AB STX $F1 LDA #$8D JSR COUT LDA $4E14 BEQ L820B CPX #$00 BNE L8225 JSR $437B BMI L81F3 CMP #$7C BNE L820B L81F3 CLC LDA $F4 ADC $17 STA $F4 CLC LDA $F5 ADC $18 STA $F5 JSR $437B CMP #$68 BNE L820B JMP L5B2E L820B JSR PRINTSTR ASC "FUNNY, NO RESPONSE!"00 JMP L528B L8225 LDA $4DA0,X CMP #$80 BCC L822F JMP L8369 L822F LDA $4D60,X CMP #$6C BNE L8239 JMP L839B L8239 LDA $4D60,X CMP #$60 BNE L8264 JSR PRINTSTR ASC "A GUARD SAYS:"0D ASC "PAY YOUR TAXES!"00 JMP L528B L8264 CMP #$64 BNE L8288 JSR PRINTSTR ASC "A JESTER SINGS:"0D ASC "HO HO HO!"00 JMP L528B L8288 CMP #$68 BNE L82BB JSR PRINTSTR ASC "A MERCHANT SAYS:"0D ASC "WILL YOU BUY MY APPLES?"00 JMP L528B L82BB CMP #$F0 BNE L82E4 JSR PRINTSTR ASC "A FIGHTER SAYS:"0D ASC "UGH, ME TOUGH!"00 JMP L528B L82E4 CMP #$F4 BNE L8306 JSR PRINTSTR ASC "A CLERIC SAYS:"0D ASC "BELIEVE!"00 JMP L528B L8306 CMP #$F8 BNE L8335 JSR PRINTSTR ASC "A WIZARD SAYS:"0D ASC "HEX-E-POO-HEX-ON-YOU!"00 JMP L528B L8335 CMP #$FC BNE L8366 JSR PRINTSTR ASC "A THIEF SAYS:"0D ASC "PSST, WANNA BUY A WATCH?"00 JMP L528B L8366 JMP L820B L8369 SEC SBC #$80 JSR L5AF7 LDY #$07 L8371 INC $4E BNE L8371 INC $4F BNE L8371 DEY BNE L8371 LDX $F1 LDA $4E37 CMP #$09 BNE L8398 LDA $4E14 CMP #$03 BNE L8398 LDA $4DA0,X CMP #$81 BNE L8398 LDA #$01 STA $4E36 L8398 JMP L528B L839B JSR PRINTSTR ASC "WELCOME MY CHILD "00 JSR $4084 JSR PRINTSTR ASC 8D ASC "FIRST MY 50 G.P. TRIBUTE!"8D00 LDA #$50 STA $FD LDA #$00 STA $FC JSR L655D JSR PRINTSTR ASC "AND FOR IT I RAISE THEE "00 LDA $4E1B LDX #$03 CMP #$50 BCC L8410 LDX #$02 CMP #$75 BCC L8410 LDX #$01 CMP #$99 BCC L8410 LDX #$00 L8410 STX $F0 TXA LDX #$00 JSR PRNTAX SED CLC LDA $4E1B ADC $F0 STA $4E1B CLD JMP L528B L8426 JSR PRINTSTR ASC "UNLOCK DIRECTION-"00 JSR L67E7 LDA $17 BNE L8459 L8442 JSR PRINTSTR ASC 8D ASC "NO DOOR THERE!"8700 JMP L528B L8459 LDA $01 STA $F5 LDA $00 CLC ADC $17 STA $F4 JSR $437B CMP #$A0 BNE L8442 LDA $4E2F BNE L848A JSR PRINTSTR ASC 8D ASC "NO KEYS THAT FIT!"8700 JMP L528B L848A SED SEC LDA $4E2F SBC #$01 STA $4E2F CLD LDA $12 ASL LDX #$00 STA ($06,X) JMP L528B L849F LDA $4EA5 BNE L84B5 L84A4 JSR PRINTSTR ASC "VIEW WHAT?"00 JMP L528B L84B5 LDA $4E14 CMP #$04 BCS L84A4 JSR PRINTSTR ASC "VIEW"8D ASC "WITH MAGICAL HELM!"00 SED SEC LDA $4EA5 SBC #$01 STA $4EA5 CLD LDA #$20 STA $F4 STA $F5 JSR L6E8B BIT KBDSTROBE L84EE LDA KBD BPL L84EE BIT KBDSTROBE LDX #$FF LDA #$FF L84FA STA $4B00,X STA $4C00,X DEX BNE L84FA STA $4B00 STA $4C00 JMP L528B L850C JSR PRINTSTR ASC "WEAR ARMOUR:"0D ASC "1-CLOTH, 2-LEATHER, 3-CHAIN,"0D ASC "4-PLATE, 5-REFLECT, 6-POWER,"0D ASC "WHICH? "00 JSR L653E STA $F0 CMP #$07 BCC L856B LDA #$00 STA $F0 L856B CLC ADC #$1D JSR $409C LDX $F0 LDA $4E60,X BNE L858E LDA $F0 BEQ L858E JSR PRINTSTR ASC " NOT OWNED!"00 JMP L528B L858E LDA $F0 ASL ASL ASL CMP $4E15 BCC L85C5 JSR PRINTSTR ASC " <-THOU ART NOT"0D ASC "STRONG ENOUGH TO WEAR!"00 JMP L528B L85C5 JSR PRINTSTR ASC " READY."00 LDA $F0 STA $4E2C JMP L528B L85D8 JSR PRINTSTR ASC "X-IT"00 LDA $11 CMP #$78 BCC L85F4 JSR PRINTSTR ASC " WHAT?"8700 JMP L528B L85F4 LDA $00 STA $F4 LDA $01 STA $F5 JSR $437B LDA $12 CMP #$04 BEQ L8621 CMP #$00 BNE L860F LDA $11 CMP #$24 BEQ L8621 L860F JSR PRINTSTR ASC "-NOT HERE!"8700 JMP L528B L8621 LDA $11 ASL LDY #$00 STA ($06),Y LDA $4E11 ASL CLC ADC #$78 STA $11 JMP L528B L8634 JSR PRINTSTR ASC "YELL WHAT?"8D00 L8643 LDA KBD BPL L8643 CMP #$8D BEQ L8655 JSR COUT BIT KBDSTROBE JMP L8643 L8655 JSR COUT BIT KBDSTROBE JMP L528B L865E LDA #$28 STA $21 JSR HOME LDA TXTSET JSR $4084 JSR PRINTSTR ASC 8D ASC "A LEVEL "00 LDA $4E20 JSR PRBYTE LDA #$A0 JSR COUT LDA $4E10 JSR $4069 LDA #$A0 JSR COUT LDA $4E12 CLC ADC #$44 JSR $409C LDA #$A0 JSR COUT LDA $4E11 CLC ADC #$48 JSR $409C LDA #$8D JSR COUT LDA #$8D JSR COUT JSR PRINTSTR ASC "WEAPON: "00 LDA $4E2B CLC ADC #$13 JSR $409C LDX #$1B LDY #$03 JSR $458A JSR PRINTSTR ASC "TORCHES-"00 LDA $4E2E JSR PRBYTE LDX #$00 LDY #$04 JSR $458A JSR PRINTSTR ASC "ARMOUR: "00 LDA $4E2C CLC ADC #$1D JSR $409C LDX #$1E LDY #$04 JSR $458A JSR PRINTSTR ASC "KEYS-"00 LDA $4E2F JSR PRBYTE LDX #$01 LDY #$05 JSR $458A JSR PRINTSTR ASC "SPELL: "00 LDA $4E2D CLC ADC #$24 JSR $409C LDX #$1D LDY #$05 JSR $458A JSR PRINTSTR ASC "TOOLS-"00 LDA $4E30 JSR PRBYTE LDX #$00 LDY #$07 JSR $458A LDA #$3E JSR $409C LDA #$AD JSR COUT LDA $4E15 JSR PRBYTE LDX #$01 LDY #$08 JSR $458A LDA #$3F JSR $409C LDA #$AD JSR COUT LDA $4E16 JSR PRBYTE LDX #$0E LDY #$07 JSR $458A LDA #$40 JSR $409C LDA #$AD JSR COUT LDA $4E17 JSR PRBYTE LDX #$0D LDY #$08 JSR $458A LDA #$41 JSR $409C LDA #$AD JSR COUT LDA $4E18 JSR PRBYTE LDX #$1F LDY #$07 JSR $458A LDA #$42 JSR $409C LDA #$AD JSR COUT LDA $4E19 JSR PRBYTE LDX #$1A LDY #$08 JSR $458A LDA #$43 JSR $409C LDA #$AD JSR COUT LDA $4E1A JSR PRBYTE LDX #$00 LDY #$0A JSR $458A JSR PRINTSTR ASC "WEAPONS: "00 LDX #$01 L87E1 LDA $4E40,X BEQ L8802 STX $F0 TXA CLC ADC #$13 JSR $409C JSR PRINTSTR ASC "S-"00 LDX $F0 LDA $4E40,X JSR PRBYTE LDA #$A0 JSR COUT L8802 INX CPX #$0A BCC L87E1 LDX #$00 LDY #$0D JSR $458A JSR PRINTSTR ASC "ARMOUR: "00 LDX #$01 L881C LDA $4E60,X BEQ L883C STX $F0 TXA CLC ADC #$1D JSR $409C JSR PRINTSTR ASC "-"00 LDX $F0 LDA $4E60,X JSR PRBYTE LDA #$A0 JSR COUT L883C INX CPX #$07 BCC L881C LDX #$00 LDY #$0F JSR $458A JSR PRINTSTR ASC "SPELLS: "00 LDX #$01 L8856 LDA $4E80,X BEQ L8877 STX $F0 TXA CLC ADC #$24 JSR $409C JSR PRINTSTR ASC "S-"00 LDX $F0 LDA $4E80,X JSR PRBYTE LDA #$A0 JSR COUT L8877 INX CPX #$0A BCC L8856 LDX #$00 LDY #$11 JSR $458A JSR PRINTSTR ASC "ITEMS: "00 LDX #$00 L8890 LDA $4EA0,X BEQ L88B1 STX $F0 TXA CLC ADC #$2E JSR $409C JSR PRINTSTR ASC "S-"00 LDX $F0 LDA $4EA0,X JSR PRBYTE LDA #$A0 JSR COUT L88B1 INX CPX #$10 BCC L8890 LDX #$00 L88B8 LDA KBD BPL L88B8 BIT KBDSTROBE JSR HOME LDA TXTCLR LDA HIRES JSR $44DE JMP L528B