You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

4819 lines
86 KiB

; rz (receive Zmodem) is a disassembly of CP/M 3 binaries by Wilfried Schmitten released in 1992.
; this file is an attempt to reconstruct the Z80 assembler source code which has been lost
; credit to Wilfried Schmitten for writing this program initially
;
; +-----------------------------------------------------------------+
; | This file is generated by The Interactive Disassembler (IDA) FW |
; | Copyright (c) 1997 by DataRescue sprl, <ida@datarescue.com> |
; | Professional version of IDA is at http://www.idapro.com |
; +-----------------------------------------------------------------+
;
; File Name C:\RZ.COM
; Format COM File
; Base Address: 0000h Range: 0100h - 1800h Loaded length: 1700h
; Processor: z80
; Target assembler: Table Driven Assembler (TASM) by Speech Technology Inc.
bdos .equ 0005h
A_READ .equ 3
A_STATIN .equ 7
C_WRITESTR .equ 9
S_BDOSVER .equ 12
DRV_SET .equ 14
F_USERNUM .equ 32
S_SYSVAR .equ 49
;----------------------------------------------------------------------------
.org 100h
start: ld sp, nstack ; Setup local stack
ld c, S_BDOSVER
call bdos ; Return CP/M version #
cp '0' ; Get CP/M vers. #
jp c, err_vern ; CP/M 2 or less?
ld de, str_welc
ld c, C_WRITESTR ;yes
call bdos ;"RZ for ..."; Output string
call sub_0_195 ;print string
ld hl, (word_0_179E)
xor a
ld b, 14h
call sub_0_1786
ld a, (80h)
or a
jr z, loc_0_174
ld (hl), 2
ld de, 82h
ex de, hl
ld a, 0FFh
call sub_0_172E
jp nz, err_exit
ld hl, (word_0_179E)
inc hl
ld a, (hl)
or a
jp z, loc_0_174
inc hl
ld e, (hl)
inc hl
ld d, (hl)
inc hl
ld a, (de)
cp 2Dh
jr nz, loc_0_152
call sub_0_39A
ld e, (hl)
inc hl
ld d, (hl)
ld a, d
or e
jr z, loc_0_174
loc_0_152: ; CODE XREF: start+46j
ld hl, 17A3h
ex de, hl
call sub_0_1492
ld hl, 17A3h
xor a
or (hl)
jr nz, loc_0_164
ld a, (byte_0_17A1)
ld (hl), a
loc_0_164: ; CODE XREF: start+5Ej
ld bc, 0Dh
add hl, bc
dec de
ldi
ld de, 17A3h
call sub_0_1B0
call sub_0_3C9
loc_0_174: ; CODE XREF: start+25j start+3Bj
; ...
ld de, str_sxfr
ld c, C_WRITESTR
call bdos ; Output string
call sub_0_3EF
call sub_0_8D1
call sub_0_451
loc_0_185: ; DATA XREF: sub_0_195+17w
ld bc, 0
ld (word_0_17A2), bc
ld de, 17A3h
call sub_0_1B0
jp 0
; End of function start
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_195: ; CODE XREF: start+15p
ld a, (4)
ld b, a
rlca
rlca
rlca
rlca
and 0Fh
ld (byte_0_17A0), a
ld a, b
and 0Fh
inc a
ld (byte_0_17A1), a
ld hl, (byte_0_17A0)
ld (loc_0_185+1), hl
ret
; End of function sub_0_195
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_1B0: ; CODE XREF: start+6Ep start+8Fp
ld a, (de)
push af
dec de
ld a, (de)
ld e, a
ld c, F_USERNUM
call bdos ; get/set user number
pop af
dec a
ld e, a
ld c, DRV_SET
jp 5 ; Select disc
; End of function sub_0_1B0
;----------------------------------------------------------------------------
err_vern: ld de, str_cpm3 ; Display version
ld c, C_WRITESTR ; error and exit
call bdos
err_exit: ld de, str_info ; Display usage
ld c, C_WRITESTR ; and exit to
call bdos ; CP/M
jp 0
;----------------------------------------------------------------------------
str_welc: .text "RZ for CP/M 3 V 1.04\r\n"
.text "(C) 92 wshbg\r\n\n$"
str_sxfr: .text "start your local X/Y/ZModem sending program\r\n\n$"
str_cpm3: .text "sorry, CP/M 3 Tool\r\n$"
str_info: .text "usage: rz [-?pbcrxyz] [du:fn]\r\n\n"
.text " options for ZModem:\r\n"
.text " ? this help\r\n"
.text " p protect File\r\n"
.text " b receive binary\r\n"
.text " c convert to local linefeed\r\n"
.text " r resume transmission\r\n"
.text " x,y,z Protokoll\r\n"
.text " du:fn defaults to XModem\r\n\n"
.text "these values override options from sender\r\n$"
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_39A: ; CODE XREF: start+48p
push hl
push de
loc_0_39C: ; CODE XREF: sub_0_39A+12j
inc de
ld a, (de)
or a
jr z, loc_0_3AE
ld hl,loc_0_3B1
ld bc, 8
cpir
call z, sub_0_67F
jr loc_0_39C
;----------------------------------------------------------------------------
loc_0_3AE: ; CODE XREF: sub_0_39A+5j
pop de
pop hl
ret
; End of function sub_0_39A
;----------------------------------------------------------------------------
loc_0_3B1: .text "?PBCXYZR"
.dw sub_0_3E9
.dw sub_0_3D1
.dw sub_0_3CD
.dw sub_0_3C9
.dw sub_0_3E3
.dw sub_0_3DD
.dw sub_0_3D7
.dw err_exit
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_3C9: ; CODE XREF: start+71p
ld a, 1
jr loc_0_3D3
sub_0_3CD: ld a,3
jr loc_0_3D3
sub_0_3D1: ld a,4
loc_0_3D3: ld (byte_0_8AF), a
ret
;----------------------------------------------------------------------------
sub_0_3D7: ld a,$ff
ld (08B0h),a
ret
sub_0_3DD: ld a,$ff
ld (08B2h),a
ret
sub_0_3E3: ld a,$ff
ld (08B1h),a
ret
sub_0_3E9: ld a,$ff
ld (08B3h),a
ret
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_3EF: ; CODE XREF: start+7Cp
xor a
ld (byte_0_460), a
ld (byte_0_464), a
ld c, S_SYSVAR
ld de, 45Fh
call bdos ; Access the system variables
ld a, h
cpl
ld h, a
ld a, l
cpl
ld l, a
ld (word_0_46F), hl
ld c, S_SYSVAR
ld de, 463h
call bdos ; Access the system variables
ld (word_0_46B), hl
ld de, (word_0_46F)
ld a, h
and d
ld h, a
ld a, l
and e
ld l, a
ld (word_0_465), hl
ld c, S_SYSVAR
ld de, 467h
call bdos ; Access the system variables
ld (word_0_46D), hl
ld de, (word_0_46F)
ld a, h
and d
ld h, a
ld a, l
and e
ld l, a
ld (word_0_469), hl
loc_0_437: ; CODE XREF: sub_0_451+Cj
ld a, 0FEh
ld (byte_0_464), a
ld de, 463h
ld c, S_SYSVAR
call bdos ; Access the system variables
ld a, 0FEh
ld (byte_0_468), a
ld de, 467h
ld c, S_SYSVAR
jp 5 ; Access the System Control Block
; End of function sub_0_3EF
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_451: ; CODE XREF: start+82p
ld hl, (word_0_46B)
ld (word_0_465), hl
ld hl, (word_0_46D)
ld (word_0_469), hl
jr loc_0_437
; End of function sub_0_451
;----------------------------------------------------------------------------
.db 28h ; (
byte_0_460: .db 0 ; DATA XREF: sub_0_3EF+1w
.db 0 ;
.db 0 ;
.db 24h ; $
byte_0_464: .db 0 ; DATA XREF: sub_0_3EF+4w sub_0_3EF+4Aw
word_0_465: .dw 0 ; DATA XREF: sub_0_3EF+2Dw
; sub_0_451+3w
.db 22h ; "
byte_0_468: .db 0 ; DATA XREF: sub_0_3EF+57w
word_0_469: .dw 0 ; DATA XREF: sub_0_3EF+45w
; sub_0_451+9w
word_0_46B: .dw 0 ; DATA XREF: sub_0_3EF+20w
; sub_0_451r
word_0_46D: .dw 0 ; DATA XREF: sub_0_3EF+38w
; sub_0_451+6r
word_0_46F: .dw 0 ; DATA XREF: sub_0_3EF+15w
; sub_0_3EF+23r ...
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_471: ; CODE XREF: sub_0_961+92p
; seg000:0A29p ...
call bdos
or a
ret
; End of function sub_0_471
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_476: ; CODE XREF: sub_0_4A4+37p
; sub_0_961+61p
push af
loc_0_477: ; CODE XREF: sub_0_476+8j
push bc
xor a
ld b, a
ld c, a
cpir
pop bc
djnz loc_0_477
pop af
ret
; End of function sub_0_476
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_482: ; CODE XREF: sub_0_1289+122p
ld a, (2D04h)
ld de, text495h ; Update error string with errors
call sub_0_16E7
ld de, text493h
ld c, C_WRITESTR
jp 5 ; Output string
; End of function sub_0_482
;----------------------------------------------------------------------------
text493h: .text "\r\n"
text495h: .db 0,0,0
.text " error(s)\r\n$"
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_4A4: ; CODE XREF: sub_0_961+82p
ld de, 17A3h
ld hl, 4F8h
ld (hl), 3Ah
inc hl
xor a
ld b, 0Dh
call sub_0_1786
inc de
call sub_0_16C4
dec de
ld a, (de)
add a, 40h
ld (byte_0_4F4), a
dec de
ld a, (de)
ld de, 4F5h
call sub_0_16E7
ld a, 24h
ld (byte_0_507), a
ld de, text4F2h
ld c, C_WRITESTR
call bdos ; Output string
ld hl, (2CD4h)
ld a, h
or l
ret z
ld b, 1
call sub_0_476
dec hl
ld (hl), 24h
ld de, (2CD4h)
ld c, C_WRITESTR
call bdos ; Output string
ld de, text508h
ld c, C_WRITESTR
jp 5 ; Output string
; End of function sub_0_4A4
;----------------------------------------------------------------------------
text4F2h:
.db 0Dh ;
.db 0Ah ;
byte_0_4F4: .db 0 ; DATA XREF: sub_0_4A4+17w
.db 0 ;
.db 0 ;
.db 0 ;
.db 0 ;
.db 0 ;
.db 0 ;
.db 0 ;
.db 0 ;
.db 0 ;
.db 0 ;
.db 0 ;
.db 0 ;
.db 0 ;
.db 0 ;
.db 0 ;
.db 0 ;
.db 0 ;
.db 20h ;
byte_0_507: .db 0 ; DATA XREF: sub_0_4A4+24w
text508h:
.db 0Dh ;
.db 0Ah ;
.db 24h ; $
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_50B: ; CODE XREF: sub_0_D0Ep sub_0_D30+30p
; ...
ld hl, 2CABh
ld de, 51Fh
call loc_0_774
ld (hl), 24h
ld de, text51Eh
ld c, C_WRITESTR
jp 5 ; Output string
; End of function sub_0_50B
;----------------------------------------------------------------------------
text51Eh:
.db 0Dh ;
.db 0 ;
.db 0 ;
.db 0 ;
.db 0 ;
.db 0 ;
.db 0 ;
.db 0 ;
.db 0 ;
.db 0 ;
.db 0 ;
ld hl,str_busy
ld a,0
inc a
and 3
ld (052Dh),a
ld e,a
ld d,0
add hl,de
ld a,(hl)
ld (0549h),a
ld de,0548h
ld c,9
jp bdos
str_busy: .text "|/-\\ |\b\b$"
ld de,0569h
jr sub_0_555
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_552: ld de, text55Ah
sub_0_555: ld c, C_WRITESTR
jp bdos ; Output string
;----------------------------------------------------------------------------
text55Ah: .text "File skipped\r\n$"
text569h: .text "can't open any file\r\n$"
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_57F: ; CODE XREF: sub_0_DE7+Dp
ld hl, 586h
ld (hl), a
inc hl
ld (hl), c
ret
; End of function sub_0_57F
;----------------------------------------------------------------------------
.db 0 ;
byte_0_587: .db 0 ; DATA XREF: sub_0_5B4r
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_588: ; CODE XREF: sub_0_588+1Fj
; sub_0_5D4+4p ...
or a
ld hl, (1808h)
ld de, 1000h
sbc hl, de
jr z, loc_0_5A9
ld c, A_STATIN
call bdos ; Auxiliary Input status
or a
jr z, loc_0_5A9
ld c, A_READ
call bdos ; Auxiliary (Reader) input
ld c, a
ld hl, 1808h
call sub_0_61C
jr sub_0_588
;----------------------------------------------------------------------------
loc_0_5A9: ; CODE XREF: sub_0_588+9j sub_0_588+11j
ld hl, 587h
or (hl)
ret nz
ld hl, (1808h)
ld a, h
or l
ret
; End of function sub_0_588
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_5B4: ; CODE XREF: sub_0_5D4+12p
ld a, (byte_0_587)
or a
ld hl, 1808h
jp z, loc_0_5F7
push af
ld hl, 587h
dec (hl)
dec hl
pop af
ld a, (hl)
ret
; End of function sub_0_5B4
;----------------------------------------------------------------------------
.db 0Eh ;
.db 4 ;
.db 5Fh ; _
.db 0C3h ; Ã
.db 5 ;
.db 0 ;
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_5CD: ; CODE XREF: seg000:1462p
ld c, 8
call bdos ; BDOS function 8 (A_STATOUT) - Auxiliary Output status
or a
ret
; End of function sub_0_5CD
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_5D4: ; CODE XREF: sub_0_DE7+11p
push bc
ld b, 5Fh
loc_0_5D7: ; CODE XREF: sub_0_5D4+Dj
push bc
call sub_0_588
pop bc
jr nz, loc_0_5E6
call sub_0_5EB
djnz loc_0_5D7
call sub_0_588
loc_0_5E6: ; CODE XREF: sub_0_5D4+8j
call nz, sub_0_5B4
pop bc
ret
; End of function sub_0_5D4
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_5EB: ; CODE XREF: sub_0_5D4+Ap
push bc
ld a, 4
ld b, 0
loc_0_5F0: ; CODE XREF: sub_0_5EB+5j sub_0_5EB+8j
djnz loc_0_5F0
dec a
jr nz, loc_0_5F0
pop bc
ret
; End of function sub_0_5EB
;----------------------------------------------------------------------------
loc_0_5F7: ; CODE XREF: sub_0_5B4+7j
ld e, (hl)
inc hl
ld d, (hl)
ld a, d
or e
ret z
dec de
ld (hl), d
dec hl
ld (hl), e
ld de, 4
add hl, de
push hl
ld e, (hl)
inc hl
ld d, (hl)
inc hl
add hl, de
ex (sp), hl
inc de
ld a, e
and 0FFh
ld (hl), a
inc hl
ld a, d
and 0Fh
ld (hl), a
pop hl
ld a, 1
or a
ld a, (hl)
ret
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_61C: ; CODE XREF: sub_0_588+1Cp
or a
push hl
ld e, (hl)
inc hl
ld d, (hl)
ld hl, 1000h
sbc hl, de
pop hl
ret z
inc de
ld (hl), e
inc hl
ld (hl), d
inc hl
push hl
ld e, (hl)
inc hl
ld d, (hl)
inc hl
inc hl
inc hl
add hl, de
ex (sp), hl
inc de
ld a, e
and 0FFh
ld (hl), a
inc hl
ld a, d
and 0Fh
ld (hl), a
pop hl
ld (hl), c
ret
; End of function sub_0_61C
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_643: ; CODE XREF: sub_0_961+54p
; sub_0_11FA+69p
ld hl, 17A2h
ld b, 25h
jr loc_0_650
; End of function sub_0_643
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_64A: ; CODE XREF: sub_0_961+9Ep
; seg000:0A63p
ld b, 3
jr loc_0_650
; End of function sub_0_64A
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_64E: ; CODE XREF: sub_0_8D1+Cp sub_0_BD3+2Fp
ld b, 6
loc_0_650: ; CODE XREF: sub_0_643+5j sub_0_64A+2j
xor a
jp sub_0_1786
; End of function sub_0_64E
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_654: ; CODE XREF: seg000:0AAEp
xor a
or (hl)
ret z
dec (hl)
inc hl
inc hl
ld e, (hl)
ld d, 0
ld a, e
inc a
and 7Fh
ld (hl), a
inc hl
adc hl, de
ld a, (hl)
ret nc
ccf
ret
; End of function sub_0_654
;----------------------------------------------------------------------------
sub_0_669: LD A,80H
SUB (HL)
RET Z
INC (HL)
INC HL
LD E,(HL)
LD D,0
LD A,E
INC A
AND 7FH
LD (HL),A
INC HL
INC HL
ADC HL,DE
LD (HL),C
RET NC
CCF
RET
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_67F: ; CODE XREF: sub_0_39A+Fp sub_0_BD3+42j
; ...
add hl, bc
sla c
add hl, bc
ld c, (hl)
inc hl
ld h, (hl)
ld l, c
jp (hl)
; End of function sub_0_67F
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_688: ; CODE XREF: seg000:0726p sub_0_BD3+13p
; ...
xor a
push bc
push de
push hl
ld (hl), a
ld d, h
ld e, l
inc de
jr loc_0_697
; End of function sub_0_688
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_692: ; CODE XREF: seg000:077Bp seg000:07ADp
; ...
push bc
push de
push hl
ldi
loc_0_697: ldi ; CODE XREF: sub_0_688+8j
ldi
ldi
pop hl
pop de
pop bc
ret
; End of function sub_0_692
;----------------------------------------------------------------------------
loc_0_6A1: PUSH HL ;unref. ?
POP IX ;unref. ?
PUSH DE ;unref. ?
POP IY ;unref. ?
LD A,(IX+3) ;unref. ?
XOR (IY+3) ;unref. ?
JP P,loc_0_6B6 ;unref. ?
XOR (IX+3) ;unref. ?
loc_0_6B3: RET M ;unref. ?
CCF ;unref. ?
RET ;unref. ?
loc_0_6B6: XOR (IX+3) ;unref. ?
JP P,loc_0_6C2 ;unref. ?
CALL loc_0_6C2 ;unref. ?
SCF ;unref. ?
JR loc_0_6B3 ;unref. ?
loc_0_6C2: PUSH BC
PUSH DE ;unref. ?
PUSH HL ;unref. ?
EX DE,HL ;unref. ?
OR A ;unref. ?
LD B,4 ;unref. ?
loc_0_6C9: LD A,(DE) ;unref. ?
SBC A,(HL) ;unref. ?
INC DE ;unref. ?
INC HL ;unref. ?
DJNZ loc_0_6C9 ;unref. ?
POP HL ;unref. ?
POP DE ;unref. ?
POP BC ;unref. ?
RET ;unref. ?
loc_0_6D3: PUSH BC
PUSH DE
PUSH HL
LD B,4
loc_0_6D8: LD A,(DE)
XOR (HL)
JR NZ,loc_0_6E0
INC DE
INC HL
DJNZ loc_0_6D8
loc_0_6E0: POP HL
POP DE
POP BC
RET
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_6E4: ; CODE XREF: sub_0_11FA+4Bp
push bc
push de
push hl
or a
ex af, af'
ld a, 4
loc_0_6EB: ; CODE XREF: sub_0_6E4+10j
ex af, af'
ld a, (de)
adc a, (hl)
ld (bc), a
inc bc
inc de
inc hl
ex af, af'
dec a
jr nz, loc_0_6EB
pop hl
pop de
pop bc
ret
; End of function sub_0_6E4
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_6FA: ; CODE XREF: seg000:0799p
push bc
push de
push hl
ex de, hl
or a
ex af, af'
ld a, 4
loc_0_702: ; CODE XREF: sub_0_6FA+11j
ex af, af'
ld a, (de)
sbc a, (hl)
ld (bc), a
inc bc
inc hl
inc de
ex af, af'
dec a
jr nz, loc_0_702
ex af, af'
pop hl
pop de
pop bc
ret
; End of function sub_0_6FA
;----------------------------------------------------------------------------
.db 0C5h ; Å
.db 0E5h ; å
.db 3Eh ; >
.db 1 ;
.db 86h ; ?
.db 77h ; w
.db 30h ; 0
.db 9 ;
.db 6 ;
.db 3 ;
.db 23h ; #
.db 3Eh ; >
.db 0 ;
.db 8Eh ; ?
.db 77h ; w
.db 10h ;
.db 0F9h ; ù
.db 0E1h ; á
.db 0C1h ; Á
.db 0C9h ; É
;----------------------------------------------------------------------------
loc_0_726: ; CODE XREF: sub_0_8A0+Cj
call sub_0_688
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_729: ; CODE XREF: seg000:0A77p
push bc
push hl
ld a, (hl)
sub 1
ld (hl), a
ld b, 3
loc_0_731: ; CODE XREF: sub_0_729+Dj
inc hl
ld a, (hl)
sbc a, 0
ld (hl), a
djnz loc_0_731
pop hl
pop bc
ret
; End of function sub_0_729
;----------------------------------------------------------------------------
.db 0C5h ; Å
.db 0D5h ; Õ
.db 0E5h ; å
.db 0EBh ; ë
.db 3Eh ; >
.db 4 ;
.db 0F5h ; õ
.db 1Ah ;
.db 0A6h ; ¦
.db 2 ;
.db 3 ;
.db 13h ;
.db 23h ; #
.db 0F1h ; ñ
.db 3Dh ; =
.db 20h ;
.db 0F5h ; õ
.db 0E1h ; á
.db 0D1h ; Ñ
.db 0C1h ; Á
.db 0C9h ; É
.db 0 ;
.db 0CAh ; Ê
.db 9Ah ; ?
.db 3Bh ; ;
.db 0 ;
.db 0E1h ; á
.db 0F5h ; õ
.db 5 ;
.db 80h ; ?
.db 96h ; ?
.db 98h ; ?
.db 0 ;
.db 40h ; @
.db 42h ; B
.db 0Fh ;
.db 0 ;
.db 0A0h ;
.db 86h ; ?
.db 1 ;
.db 0 ;
.db 10h ;
.db 27h ; '
.db 0 ;
.db 0 ;
.db 0E8h ; è
.db 3 ;
.db 0 ;
.db 0 ;
.db 64h ; d
.db 0 ;
.db 0 ;
.db 0 ;
.db 0Ah ;
.db 0 ;
.db 0 ;
.db 0 ;
;----------------------------------------------------------------------------
loc_0_774: ; CODE XREF: sub_0_50B+6p
ld (word_0_7BF), de
ld de, 2891h
call sub_0_692
ld c, 9
ld de, 74Ch
xor a
ld (byte_0_7BA), a
ld a, 30h
ld (byte_0_7B4), a
inc de
inc de
inc de
inc de
ld b, 0Ah
loc_0_792: ; CODE XREF: seg000:07B1j
push bc
ld hl, 2891h
ld bc, 2895h
call sub_0_6FA
pop bc
jr c, unk_0_7B3
push de
ld a, (byte_0_7B4)
inc a
ld (byte_0_7B4), a
ld de, 2891h
ld hl, 2895h
call sub_0_692
pop de
djnz loc_0_792
;----------------------------------------------------------------------------
unk_0_7B3: .db 3Eh ; > ; CODE XREF: seg000:079Dj
byte_0_7B4: .db 30h ; DATA XREF: seg000:0789w seg000:07A0r
; ...
.db 0FEh ; þ
.db 30h ; 0
.db 20h ;
.db 5 ;
.db 3Eh ; >
byte_0_7BA: .db 0 ; DATA XREF: seg000:0784w
.db 0B7h ; ·
.db 28h ; (
.db 0Dh ;
.db 21h ; !
word_0_7BF: .dw 0 ; DATA XREF: seg000:0774w
.db 77h ; w
.db 23h ; #
.db 22h ; "
.db 0BFh ; ¿
.db 7 ;
.db 3Eh ; >
.db 30h ; 0
.db 32h ; 2
.db 0BAh ; º
.db 7 ;
.db 0Dh ;
.db 20h ;
.db 0B9h ; ¹
.db 3Ah ; :
.db 91h ; ?
.db 28h ; (
.db 0E6h ; æ
.db 0Fh ;
.db 0C6h ; Æ
.db 30h ; 0
.db 2Ah ; *
.db 0BFh ; ¿
.db 7 ;
.db 77h ; w
.db 23h ; #
.db 36h ; 6
.db 0 ;
.db 0C9h ; É
.db 0F5h ; õ
.db 0C6h ; Æ
byte_0_7DF: .db 0 ; DATA XREF: sub_0_8A0+3w
.db 32h ; 2
.db 0DFh ; ß
.db 7 ;
.db 0F1h ; ñ
.db 0C9h ; É
.db 20h ;
.db 83h ; ?
.db 0B8h ; ¸
.db 0EDh ; í
.db 0E3h ; ã
.db 20h ;
.db 0BBh ; »
.db 0DEh ; Þ
.db 0F5h ; õ
.db 0FDh ; ý
.db 21h ; !
word_0_7F0: .dw 289Dh ; DATA XREF: sub_0_825+2r
.db 0DDh ; Ý
.db 21h ; !
.db 99h ; ?
.db 28h ; (
.db 0DDh ; Ý
.db 0AEh ; ®
.db 0 ;
.db 26h ; &
.db 0 ;
.db 6Fh ; o
.db 29h ; )
.db 29h ; )
.db 44h ; D
.db 4Dh ; M
.db 0FDh ; ý
.db 9 ;
.db 0FDh ; ý
.db 7Eh ; ~
.db 0 ;
.db 0DDh ; Ý
.db 0AEh ; ®
.db 1 ;
.db 0DDh ; Ý
.db 77h ; w
.db 0 ;
.db 0FDh ; ý
.db 7Eh ; ~
.db 1 ;
.db 0DDh ; Ý
.db 0AEh ; ®
.db 2 ;
.db 0DDh ; Ý
.db 77h ; w
.db 1 ;
.db 0FDh ; ý
.db 7Eh ; ~
.db 2 ;
.db 0DDh ; Ý
.db 0AEh ; ®
.db 3 ;
.db 0DDh ; Ý
.db 77h ; w
.db 2 ;
.db 0FDh ; ý
.db 7Eh ; ~
.db 3 ;
.db 0DDh ; Ý
.db 77h ; w
.db 3 ;
.db 0F1h ; ñ
.db 0C9h ; É
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_825: ; CODE XREF: sub_0_8D1+Fp
push de
push hl
ld hl, (word_0_7F0)
ld bc, 3FFh
add hl, bc
push hl
pop iy
ld ix, 7E5h
xor a
loc_0_836: ; CODE XREF: sub_0_825+5Bj
push af
ld hl, 0FFFFh
ld de, 0FFFFh
xor e
ld e, a
ld b, 8
loc_0_841: ; CODE XREF: sub_0_825+3Bj
scf
rr h
rr l
rr d
rr e
jr nc, loc_0_860
ld a, e
xor (ix+0)
ld e, a
ld a, d
xor (ix+1)
ld d, a
ld a, l
xor (ix+2)
ld l, a
ld a, h
xor (ix+3)
ld h, a
loc_0_860: ; CODE XREF: sub_0_825+25j
djnz loc_0_841
ld a, h
cpl
ld (iy+0), a
dec iy
ld a, l
cpl
ld (iy+0), a
dec iy
ld a, d
cpl
ld (iy+0), a
dec iy
ld a, e
cpl
ld (iy+0), a
dec iy
pop af
inc a
jr nz, loc_0_836
pop hl
pop de
ret
; End of function sub_0_825
;----------------------------------------------------------------------------
loc_0_885: ; CODE XREF: sub_0_13BA+Fp
; sub_0_13BA+1Ep
push af
;----------------------------------------------------------------------------
.db 21h ; !
word_0_887: .dw 0 ; DATA XREF: sub_0_8A0+6w sub_0_13BA+2Er
; ...
.db 11h ;
.db 21h ; !
.db 10h ;
.db 0ACh ; ¬
.db 67h ; g
.db 6 ;
.db 8 ;
.db 29h ; )
.db 30h ; 0
.db 6 ;
.db 7Ch ; |
.db 0AAh ; ª
.db 67h ; g
.db 7Dh ; }
.db 0ABh ; «
.db 6Fh ; o
.db 10h ;
.db 0F5h ; õ
.db 22h ; "
.db 87h ; ?
.db 8 ;
.db 0F1h ; ñ
.db 0C9h ; É
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_8A0: ; CODE XREF: sub_0_13BA+9p
xor a
ld h, a
ld l, a
ld (byte_0_7DF), a
ld (word_0_887), hl
ld hl, 2899h
jp loc_0_726
; End of function sub_0_8A0
;----------------------------------------------------------------------------
byte_0_8AF: .db 4 ; DATA XREF: sub_0_3C9+Aw sub_0_8D1+34r
; ...
byte_0_8B0: .db 0 ; DATA XREF: sub_0_8D1+23r
byte_0_8B1: .db 0 ; DATA XREF: sub_0_961r
byte_0_8B2: .db 0 ; DATA XREF: sub_0_961+14r
byte_0_8B3: .db 0 ; DATA XREF: seg000:0A3Cr
word_0_8B4: .dw 0 ; DATA XREF: sub_0_8B6+17w
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_8B6: ; CODE XREF: sub_0_8D1+20p
xor a
ld c, a
ld b, 8
ld a, h
loc_0_8BB: ; CODE XREF: sub_0_8B6+Cj
rlca
set 7, c
jr c, loc_0_8C4
rr c
djnz loc_0_8BB
loc_0_8C4: ; CODE XREF: sub_0_8B6+8j
ld a, h
and c
ld h, a
ld l, 0
ld (2CEBh), hl
dec hl
ld (word_0_8B4), hl
ret
; End of function sub_0_8B6
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_8D1: ; CODE XREF: start+7Fp
xor a
ld hl, 2C9Dh
ld b, 61h
call sub_0_1786
ld hl, 1808h
call sub_0_64E
call sub_0_825
ld hl, (word_0_179E)
ld (2CE9h), hl
ld de, (6)
ex de, hl
or a
sbc hl, de
call sub_0_8B6
ld a, (byte_0_8B0)
cp 0
jr z, loc_0_8FD
ld a, 7
loc_0_8FD: ; CODE XREF: sub_0_8D1+28j
ld (2CA4h), a
ld a, 10h
ld (2C9Eh), a
ld a, (byte_0_8AF)
cp 3
jr c, loc_0_947
ld a, 1
ld (byte_0_B0A), a
call loc_0_ACF
jp c, loc_0_954
or a
jr z, loc_0_92B
cp 4
jr z, loc_0_924
cp 0Fh
jr nz, loc_0_924
jr locret_0_953
;----------------------------------------------------------------------------
loc_0_924: ; CODE XREF: sub_0_8D1+4Bj
; sub_0_8D1+4Fj
call sub_0_BB4
jr c, loc_0_954
jr locret_0_953
;----------------------------------------------------------------------------
loc_0_92B: ; CODE XREF: sub_0_8D1+47j
; sub_0_8D1+74j
ld a, 3
ld (byte_0_8AF), a
xor a
ld (2D04h), a
call sub_0_11C1
jr c, loc_0_954
call sub_0_961
jr c, loc_0_954
jr z, locret_0_953
call sub_0_11FA
jr c, loc_0_954
jr loc_0_92B
;----------------------------------------------------------------------------
loc_0_947: ; CODE XREF: sub_0_8D1+39j
call sub_0_961
jr c, loc_0_954
jr z, locret_0_953
call sub_0_11FA
jr c, loc_0_954
locret_0_953: ; CODE XREF: sub_0_8D1+51j
; sub_0_8D1+58j ...
ret
;----------------------------------------------------------------------------
loc_0_954: ; CODE XREF: sub_0_8D1+43j
; sub_0_8D1+56j ...
call sub_0_DD9
ld a, (2CA5h)
cp 0FFh
call z, sub_0_D0E
jr locret_0_953
; End of function sub_0_8D1
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_961: ; CODE XREF: sub_0_8D1+68p
; sub_0_8D1+76p ...
ld a, (byte_0_8B1)
cpl
ld hl, 8B2h
or (hl)
ld (2CA3h), a
ld a, (2CA4h)
or a
jr z, loc_0_975
ld (2CA1h), a
loc_0_975: ; CODE XREF: sub_0_961+Fj
ld a, (byte_0_8B2)
cp 0FFh
jr z, loc_0_988
ld a, (2CA2h)
cp 2
jr nz, loc_0_988
ld a, 0
ld (2CA3h), a
loc_0_988: ; CODE XREF: sub_0_961+19j
; sub_0_961+20j
ld a, (2CA2h)
cp 1
jr nz, loc_0_994
ld a, 0FFh
ld (2CA3h), a
loc_0_994: ; CODE XREF: sub_0_961+2Cj
ld a, (2CA1h)
cp 7
jr z, loc_0_9AE
ld a, (2CA1h)
cp 3
jr nz, loc_0_9AE
ld a, (2CA3h)
cp 0FFh
jr nz, loc_0_9AE
ld a, 7
ld (2CA1h), a
loc_0_9AE: ; CODE XREF: sub_0_961+38j
; sub_0_961+3Fj ...
ld a, (byte_0_8AF)
cp 3
jr c, loc_0_9E3
call sub_0_643
ld hl, (2CE9h)
xor a
or (hl)
scf
ret z
push hl
ld b, 1
call sub_0_476
dec hl
ld (hl), 20h
pop hl
ld de, 2CD0h
ld a, 7
ld (de), a
ld a, 0FFh
call sub_0_172E
ld hl, (2CD2h)
ld de, 17A3h
call sub_0_1492
ld hl, (byte_0_17A0)
ld (word_0_17A2), hl
loc_0_9E3: ; CODE XREF: sub_0_961+52j
; seg000:0A2Cj
call sub_0_4A4
ld de, 17A3h
call sub_0_169E
jr nz, loc_0_A11
ld de, 17A3h
ld c, 16h
call sub_0_471
ret c
ld a, 0FFh
ld (2CA5h), a
ld hl, 280Eh
call sub_0_64A
ld a, (2CD1h)
cp 2
jr c, loc_0_A0D
; End of function sub_0_961
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_A09: ; CODE XREF: seg000:0A11p
ld de, (2CD4h)
loc_0_A0D: ; CODE XREF: sub_0_961+A6j
ld a, 1
or a
ret
; End of function sub_0_A09
;----------------------------------------------------------------------------
loc_0_A11: ; CODE XREF: sub_0_961+8Bj
call sub_0_A09
ld a, (byte_0_8AF)
cp 4
jr nz, loc_0_A24
ld a, (2CA1h)
cp 7
jr nz, loc_0_A35
jr loc_0_A2E
;----------------------------------------------------------------------------
loc_0_A24: ; CODE XREF: seg000:0A19j seg000:0A41j
ld de, 17A3h
ld c, 13h
call sub_0_471
jr nc, loc_0_9E3
loc_0_A2E: ; CODE XREF: seg000:0A22j
call sub_0_552
ld a, 5
scf
ret
;----------------------------------------------------------------------------
loc_0_A35: ; CODE XREF: seg000:0A20j
ld a, (2CA1h)
cp 3
jr z, loc_0_A43
ld a, (byte_0_8B3)
cp 0FFh
jr nz, loc_0_A24
loc_0_A43: ; CODE XREF: seg000:0A3Aj
ld de, 2811h
ld c, 1Ah
call bdos ; BDOS function 26 (F_DMAOFF) - Set DMA address
ld e, 1
ld c, 2Ch
call bdos ; BDOS function 44 (F_MULTISEC) - Set number of records to read/write at once
ld de, 17A3h
ld c, 0Fh
call sub_0_471
ret c
ld a, 0FFh
ld (2CA5h), a
ld hl, 280Eh
call sub_0_64A
ld de, 17A3h
ld c, 23h
call sub_0_471
ret c
ld hl, 17C7h
ld (hl), 0
ld hl, 17C4h
call sub_0_729
ld de, 2CABh
call sub_0_692
ex de, hl
ld b, 7
loc_0_A83: ; CODE XREF: seg000:0A90j
push hl
sla (hl)
inc hl
rl (hl)
inc hl
rl (hl)
inc hl
rl (hl)
pop hl
djnz loc_0_A83
ld de, 17A3h
ld c, 21h
call sub_0_471
ret c
ld a, (2CA1h)
cp 3
jr z, loc_0_AA6
ld a, 9
or a
ret
;----------------------------------------------------------------------------
loc_0_AA6: ; CODE XREF: seg000:0AA0j
ld a, 80h
ld (280Eh), a
loc_0_AAB: ; CODE XREF: seg000:0AB5j
ld hl, 280Eh
call sub_0_654
jr z, loc_0_AC6
cp 1Ah
jr nz, loc_0_AAB
ld a, (2810h)
dec a
ld (280Fh), a
ld hl, 280Eh
ld a, 7Fh
sub (hl)
jr loc_0_AC8
;----------------------------------------------------------------------------
loc_0_AC6: ; CODE XREF: seg000:0AB1j
ld a, 80h
loc_0_AC8: ; CODE XREF: seg000:0AC4j
ld (280Eh), a
ld a, 1
or a
ret
;----------------------------------------------------------------------------
loc_0_ACF: ; CODE XREF: sub_0_8D1+40p
; sub_0_BB4+Ep
xor a
ld (2D04h), a
ld a, 4
ld hl, 8AFh
cp (hl)
ld a, 0
ret nz
ld hl, 2CEDh
ld b, 11h
xor a
call sub_0_1786
call sub_0_FAA
ld a, (2CA6h)
cp 0FFh
ld b, 5
jr z, loc_0_AF3
ld b, 0Ah
loc_0_AF3: ; CODE XREF: seg000:0AEFj
push bc
ld ix, 2CE0h
ld (ix+3), 20h
ld (ix+2), 0
ld hl, (2CEBh)
ld (ix+0), l
ld (ix+1), h
byte_0_B0A: .equ $+1 ; DATA XREF: sub_0_8D1+3Dw
ld a,1 ; self modifying value
CALL 13BAH
LD A,(byte_0_B0A)
CP 5
JR NZ,0B1AH
LD A,1
LD (byte_0_B0A),A
loc_0_B1A: CALL 0FD1H
LD HL,0B96H
LD BC,0AH
CPIR
JP Z,67FH
loc_0_B28: LD HL,2D04H
INC (HL)
CALL 482H
loc_0_B2F: POP BC
DJNZ 0AF3H
XOR A
RET
loc_0_B34: POP BC
LD A,0FFH
SCF
RET
loc_0_B39: POP BC
CALL 0D9BH
LD A,0FH
RET
loc_0_B40: LD HL,2CE0H
CALL 688H
JR 0B68H
loc_0_B48: LD IX,2CA7H
LD A,(IX+3)
AND 40H
LD (2C9DH),A
CALL 0EC7H
CP 0EBH
LD A,6
JR NZ,loc_0_B6A
LD HL,(2CE9H)
LD DE,2CAFH
LD BC,20H
LDIR
LD A,3
loc_0_B6A: PUSH AF
LD HL,2CE0H
CALL 688H
POP AF
CALL 13BAH
CALL 0FC9H
JP 0B28H
loc_0_B7B: LD HL,2CA7H
LD DE,2C9FH
CALL 692H
LD A,1
LD (0B0AH),A
CALL 0EC7H
CP 0EBH
LD A,6
JR NZ,0B6AH
POP BC
LD A,4
RET
loc_0_B96: .db 0 ;
.db 0Bh ;
.db 0FEh ; þ
.db 4 ;
.db 2 ;
.db 11h ;
.db 12h ;
.db 0Fh ;
.db 8 ;
.db 10h ;
loc_0_BA0: .dw loc_0_B34
.dw loc_0_B39
.dw loc_0_B1A
.dw loc_0_B34
.dw loc_0_B40
.dw loc_0_B48
.dw loc_0_B7B
.dw loc_0_B28
.dw loc_0_B2F
.dw loc_0_B2F
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_BB4: ; CODE XREF: sub_0_8D1+53p
; sub_0_BB4+14j
call sub_0_BD3
ret c
cp 0Bh
jr z, loc_0_BC2
cp 5
jr z, loc_0_BC2
or a
ret
;----------------------------------------------------------------------------
loc_0_BC2: ; CODE XREF: sub_0_BB4+6j sub_0_BB4+Aj
call loc_0_ACF
ret c
cp 4
jr z, sub_0_BB4
cp 0Fh
ld a, 0
ret z
ld a, 0FFh
scf
ret
; End of function sub_0_BB4
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_BD3: ; CODE XREF: sub_0_BB4p
call sub_0_961
jr nc, loc_0_BDF
ld a, 5
ld (byte_0_B0A), a
or a
ret
;----------------------------------------------------------------------------
loc_0_BDF: ; CODE XREF: sub_0_BD3+3j
cp 9
jr z, loc_0_BE9
ld hl, 2CABh
call sub_0_688
loc_0_BE9: ; CODE XREF: sub_0_BD3+Ej
xor a
ld (2D04h), a
call sub_0_FAA
call sub_0_FC9
call sub_0_D30
ld hl, 2CABh
ld de, 2CE0h
call sub_0_692
ld hl, 1808h
call sub_0_64E
ld a, 9
call sub_0_13BA
call sub_0_FD1
ld hl, loc_0_CE4
ld bc, 7
cpir
jp z, sub_0_67F
ld a, 0FFh
scf
ret
; End of function sub_0_BD3
;----------------------------------------------------------------------------
.db 21h ; !
.db 4 ;
.db 2Dh ; -
.db 34h ; 4
.db 0CDh ; Í
.db 82h ; ?
.db 4 ;
.db 21h ; !
.db 4 ;
.db 2Dh ; -
.db 3Eh ; >
.db 0Ah ;
.db 0BEh ; ¾
.db 0C2h ; Â
.db 0F0h ; ð
.db 0Bh ;
.db 3Eh ; >
.db 0FFh ; ÿ
.db 37h ; 7
.db 0C9h ; É
.db 0CDh ; Í
.db 0C7h ; Ç
.db 0Eh ;
.db 0C3h ; Ã
.db 0F0h ; ð
.db 0Bh ;
.db 11h ;
.db 0A7h ; §
.db 2Ch ; ,
.db 21h ; !
.db 0ABh ; «
.db 2Ch ; ,
.db 0CDh ; Í
.db 0D3h ; Ó
.db 6 ;
.db 0C2h ; Â
.db 0F0h ; ð
.db 0Bh ;
.db 0CDh ; Í
.db 0Eh ;
.db 0Dh ;
.db 28h ; (
.db 9 ;
.db 3Eh ; >
.db 0Ch ;
.db 32h ; 2
.db 0Ah ;
.db 0Bh ;
.db 3Eh ; >
.db 0FFh ; ÿ
.db 37h ; 7
.db 0C9h ; É
.db 0CDh ; Í
.db 43h ; C
.db 6 ;
.db 3Eh ; >
.db 0Bh ;
.db 0B7h ; ·
.db 0C9h ; É
.db 21h ; !
.db 4 ;
.db 2Dh ; -
.db 34h ; 4
.db 0CDh ; Í
.db 82h ; ?
.db 4 ;
.db 21h ; !
.db 4 ;
.db 2Dh ; -
.db 3Eh ; >
.db 0Ah ;
.db 0BEh ; ¾
.db 20h ;
.db 4 ;
.db 3Eh ; >
.db 0FFh ; ÿ
.db 37h ; 7
.db 0C9h ; É
.db 21h ; !
.db 0AFh ; ¯
.db 2Ch ; ,
.db 0CDh ; Í
.db 0DCh ; Ü
.db 0Dh ;
.db 0C3h ; Ã
.db 0F0h ; ð
.db 0Bh ;
.db 11h ;
.db 0A7h ; §
.db 2Ch ; ,
.db 21h ; !
.db 0ABh ; «
.db 2Ch ; ,
.db 0CDh ; Í
.db 0D3h ; Ó
.db 6 ;
.db 0C2h ; Â
.db 57h ; W
.db 0Ch ;
.db 0CDh ; Í
.db 29h ; )
.db 5 ;
.db 0CDh ; Í
.db 0C7h ; Ç
.db 0Eh ;
.db 21h ; !
.db 0F9h ; ù
.db 0Ch ;
.db 1 ;
.db 7 ;
.db 0 ;
.db 0EDh ; í
.db 0B1h ; ±
.db 0CAh ; Ê
.db 7Fh ; 
.db 6 ;
.db 0C3h ; Ã
.db 1Ch ;
.db 0Ch ;
.db 3Eh ; >
.db 0FFh ; ÿ
.db 37h ; 7
.db 0C9h ; É
.db 0AFh ; ¯
.db 32h ; 2
.db 4 ;
.db 2Dh ; -
.db 11h ;
.db 0F9h ; ù
.db 2Ch ; ,
.db 21h ; !
.db 0ABh ; «
.db 2Ch ; ,
.db 1 ;
.db 0ABh ; «
.db 2Ch ; ,
.db 0CDh ; Í
.db 0E4h ; ä
.db 6 ;
.db 0C3h ; Ã
.db 0BAh ; º
.db 0Fh ;
.db 0CDh ; Í
.db 97h ; ?
.db 0Ch ;
.db 0C3h ; Ã
.db 0Ah ;
.db 0Ch ;
.db 0CDh ; Í
.db 97h ; ?
.db 0Ch ;
.db 0C3h ; Ã
.db 7Fh ; 
.db 0Ch ;
.db 0CDh ; Í
.db 97h ; ?
.db 0Ch ;
.db 21h ; !
.db 0ABh ; «
.db 2Ch ; ,
.db 11h ;
.db 0E0h ; à
.db 2Ch ; ,
.db 0CDh ; Í
.db 92h ; ?
.db 6 ;
.db 3Eh ; >
.db 3 ;
.db 0CDh ; Í
.db 0BAh ; º
.db 13h ;
.db 0C3h ; Ã
.db 7Fh ; 
.db 0Ch ;
.db 0CDh ; Í
.db 97h ; ?
.db 0Ch ;
.db 0CDh ; Í
.db 30h ; 0
.db 0Dh ;
.db 0DAh ; Ú
.db 47h ; G
.db 0Ch ;
.db 21h ; !
.db 0ABh ; «
.db 2Ch ; ,
.db 11h ;
.db 0E0h ; à
.db 2Ch ; ,
.db 0CDh ; Í
.db 92h ; ?
.db 6 ;
.db 3Eh ; >
.db 3 ;
.db 0CDh ; Í
.db 0BAh ; º
.db 13h ;
.db 0C3h ; Ã
.db 0Ah ;
.db 0Ch ;
loc_0_CE4: .db 6 ;
.db 0FEh ; þ
.db 4 ;
.db 0Bh ;
.db 0FFh ; ÿ
.db 0Ah ;
.db 0FCh ; ü
.db 1Ch ;
.db 0Ch ;
.db 73h ; s
.db 0Ch ;
.db 57h ; W
.db 0Ch ;
.db 36h ; 6
.db 0Ch ;
.db 30h ; 0
.db 0Ch ;
.db 1Ch ;
.db 0Ch ;
.db 1Ch ;
.db 0Ch ;
.db 0EBh ; ë
.db 0EAh ; ê
.db 0E9h ; é
.db 0E8h ; è
.db 0FFh ; ÿ
.db 0FEh ; þ
.db 10h ;
.db 93h ; ?
.db 0Ch ;
.db 1Ch ;
.db 0Ch ;
.db 57h ; W
.db 0Ch ;
.db 0AAh ; ª
.db 0Ch ;
.db 0B0h ; °
.db 0Ch ;
.db 0B6h ; ¶
.db 0Ch ;
.db 0CAh ; Ê
.db 0Ch ;
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_D0E: ; CODE XREF: sub_0_8D1+8Bp
; sub_0_11FA+64p
call sub_0_50B
call sub_0_D30
ret c
loc_0_D15: ; CODE XREF: sub_0_D0E+13j
ld a, 1Ah
call loc_0_D68
ret c
ld hl, 280Eh
ld a, 1
cp (hl)
jr nz, loc_0_D15
ld a, 0
ld (2CA5h), a
ld c, 10h
ld de, 17A3h
jp sub_0_471
; End of function sub_0_D0E
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_D30: ; CODE XREF: sub_0_BD3+20p
; sub_0_D0E+3p ...
ld bc, (2CF5h)
ld a, b
or c
ret z
ld hl, (2CE9h)
loc_0_D3A: ; CODE XREF: sub_0_D30+2Ej
ld a, (2CA3h)
cp 0FFh
jr z, loc_0_D52
loc_0_D41:
ld a, 0 ; DATA XREF: sub_0_D30+23w
cp 0Dh
jr z, loc_0_D52
ld a, (hl)
cp 0Ah
jr nz, loc_0_D52
ld a, 0Dh
call loc_0_D68
ret c
loc_0_D52: ; CODE XREF: sub_0_D30+Fj sub_0_D30+15j
; ...
ld a, (hl)
ld (loc_0_D41+1), a
inc hl
dec bc
call loc_0_D68
ret c
ld a, b
or c
jr nz, loc_0_D3A
call sub_0_50B
call sub_0_FAA
xor a
ret
; End of function sub_0_D30
;----------------------------------------------------------------------------
loc_0_D68: ; CODE XREF: sub_0_D0E+9p sub_0_D30+1Ep
; ...
ld (byte_0_D6F), a
push bc
push de
push hl
;----------------------------------------------------------------------------
.db 0Eh ;
byte_0_D6F: .db 0 ; DATA XREF: seg000:0D68w
.db 21h ; !
.db 0Eh ;
.db 28h ; (
.db 0CDh ; Í
.db 69h ; i
.db 6 ;
.db 20h ;
.db 1Fh ;
.db 21h ; !
.db 0Eh ;
.db 28h ; (
.db 0CDh ; Í
.db 4Ah ; J
.db 6 ;
.db 0Eh ;
.db 1Ah ;
.db 11h ;
.db 11h ;
.db 28h ; (
.db 0CDh ; Í
.db 5 ;
.db 0 ;
.db 0Eh ;
.db 2Ch ; ,
.db 1Eh ;
.db 1 ;
.db 0CDh ; Í
.db 5 ;
.db 0 ;
.db 0Eh ;
.db 15h ;
.db 11h ;
.db 0A3h ; £
.db 17h ;
.db 0CDh ; Í
.db 71h ; q
.db 4 ;
.db 30h ; 0
.db 0D7h ; ×
.db 0E1h ; á
.db 0D1h ; Ñ
.db 0C1h ; Á
.db 0C9h ; É
.db 21h ; !
.db 0E0h ; à
.db 2Ch ; ,
.db 0CDh ; Í
.db 88h ; ?
.db 6 ;
.db 6 ;
.db 4 ;
.db 0C5h ; Å
.db 3Eh ; >
.db 8 ;
.db 0CDh ; Í
.db 0BAh ; º
.db 13h ;
.db 6 ;
.db 64h ; d
.db 0CDh ; Í
.db 0E7h ; ç
.db 0Dh ;
.db 38h ; 8
.db 8 ;
.db 0FEh ; þ
.db 4Fh ; O
.db 28h ; (
.db 8 ;
.db 0FEh ; þ
.db 0FDh ; ý
.db 28h ; (
.db 4 ;
.db 0C1h ; Á
.db 10h ;
.db 0E8h ; è
.db 0C5h ; Å
.db 0C1h ; Á
.db 6 ;
.db 1 ;
.db 0CDh ; Í
.db 0E7h ; ç
.db 0Dh ;
.db 0AFh ; ¯
.db 0C9h ; É
.db 18h ;
.db 18h ;
.db 18h ;
.db 18h ;
.db 18h ;
.db 18h ;
.db 18h ;
.db 18h ;
.db 18h ;
.db 18h ;
.db 8 ;
.db 8 ;
.db 8 ;
.db 8 ;
.db 8 ;
.db 8 ;
.db 8 ;
.db 8 ;
.db 8 ;
.db 8 ;
.db 0 ;
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_DD9: ; CODE XREF: sub_0_8D1+83p
ld hl, 0DC4h
; End of function sub_0_DD9
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_DDC: ; CODE XREF: sub_0_DDC+9j sub_0_13BA+6p
ld a, (hl)
inc hl
or a
ret z
push hl
call loc_0_145C
pop hl
jr sub_0_DDC
; End of function sub_0_DDC
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_DE7: ; CODE XREF: sub_0_FD1+11p
; sub_0_11C1+2Dp ...
push bc
call sub_0_16AA
call nz, sub_0_16A5
cp 1Bh
ld a, 18h
ld c, 0Ah
call z, sub_0_57F
pop bc
loc_0_DF8: ; CODE XREF: sub_0_DE7+16j
call sub_0_5D4
jr nz, loc_0_E03
djnz loc_0_DF8
ld a, 0FEh
scf
ret
;----------------------------------------------------------------------------
loc_0_E03: ; CODE XREF: sub_0_DE7+14j
or a
ret
; End of function sub_0_DE7
;----------------------------------------------------------------------------
.db 6 ;
.db 64h ; d
.db 0CDh ; Í
.db 0E7h ; ç
.db 0Dh ;
.db 0D8h ; Ø
.db 0E6h ; æ
.db 7Fh ; 
.db 21h ; !
.db 2Ah ; *
.db 0Eh ;
.db 1 ;
.db 2 ;
.db 0 ;
.db 0EDh ; í
.db 0B1h ; ±
.db 28h ; (
.db 0EEh ; î
.db 1 ;
.db 3 ;
.db 0 ;
.db 0EDh ; í
.db 0B1h ; ±
.db 0C8h ; È
.db 47h ; G
.db 0E6h ; æ
.db 60h ; `
.db 20h ;
.db 6 ;
.db 3Ah ; :
.db 9Dh ; 
.db 2Ch ; ,
.db 0B7h ; ·
.db 20h ;
.db 0DDh ; Ý
.db 78h ; x
.db 0C9h ; É
.db 11h ;
.db 13h ;
.db 0Dh ;
.db 0Ah ;
.db 18h ;
.db 6 ;
.db 64h ; d
.db 0CDh ; Í
.db 0E7h ; ç
.db 0Dh ;
.db 0D8h ; Ø
.db 5Fh ; _
.db 0E6h ; æ
.db 60h ; `
.db 7Bh ; {
.db 0C0h ; À
.db 0FEh ; þ
.db 18h ;
.db 28h ; (
.db 12h ;
.db 21h ; !
.db 0A2h ; ¢
.db 0Eh ;
.db 1 ;
.db 4 ;
.db 0 ;
.db 0EDh ; í
.db 0B1h ; ±
.db 28h ; (
.db 0E7h ; ç
.db 3Ah ; :
.db 9Dh ; 
.db 2Ch ; ,
.db 0B7h ; ·
.db 20h ;
.db 0E1h ; á
.db 7Bh ; {
.db 0C9h ; É
.db 6 ;
.db 64h ; d
.db 0CDh ; Í
.db 0E7h ; ç
.db 0Dh ;
.db 0D8h ; Ø
.db 0FEh ; þ
.db 18h ;
.db 20h ;
.db 1Ah ;
.db 6 ;
.db 64h ; d
.db 0CDh ; Í
.db 0E7h ; ç
.db 0Dh ;
.db 0D8h ; Ø
.db 0FEh ; þ
.db 18h ;
.db 20h ;
.db 10h ;
.db 6 ;
.db 64h ; d
.db 0CDh ; Í
.db 0E7h ; ç
.db 0Dh ;
.db 0D8h ; Ø
.db 0FEh ; þ
.db 18h ;
.db 20h ;
.db 6 ;
.db 6 ;
.db 64h ; d
.db 0CDh ; Í
.db 0E7h ; ç
.db 0Dh ;
.db 0D8h ; Ø
.db 21h ; !
.db 0A6h ; ¦
.db 0Eh ;
.db 1 ;
.db 0Bh ;
.db 0 ;
.db 0EDh ; í
.db 0B1h ; ±
.db 0CAh ; Ê
.db 7Fh ; 
.db 6 ;
.db 6Fh ; o
.db 3Ah ; :
.db 9Dh ; 
.db 2Ch ; ,
.db 0B7h ; ·
.db 28h ; (
.db 5 ;
.db 7Dh ; }
.db 0E6h ; æ
.db 60h ; `
.db 28h ; (
.db 0C5h ; Å
.db 7Dh ; }
.db 0E6h ; æ
.db 60h ; `
.db 0FEh ; þ
.db 40h ; @
.db 20h ;
.db 0Ah ;
.db 7Dh ; }
.db 0EEh ; î
.db 40h ; @
.db 0C9h ; É
.db 3Eh ; >
.db 7Fh ; 
.db 0C9h ; É
.db 3Eh ; >
.db 0FFh ; ÿ
.db 0C9h ; É
.db 3Eh ; >
.db 0FFh ; ÿ
.db 0F6h ; ö
.db 80h ; ?
.db 37h ; 7
.db 0C9h ; É
.db 11h ;
.db 91h ; ?
.db 13h ;
.db 93h ; ?
.db 11h ;
.db 91h ; ?
.db 13h ;
.db 93h ; ?
.db 18h ;
.db 68h ; h
.db 69h ; i
.db 6Ah ; j
.db 6Bh ; k
.db 6Ch ; l
.db 6Dh ; m
.db 99h ; ?
.db 0Eh ;
.db 96h ; ?
.db 0Eh ;
.db 9Eh ; ?
.db 0Eh ;
.db 9Eh ; ?
.db 0Eh ;
.db 9Eh ; ?
.db 0Eh ;
.db 9Eh ; ?
.db 0Eh ;
.db 9Eh ; ?
.db 0Eh ;
.db 50h ; P
.db 0Eh ;
.db 50h ; P
.db 0Eh ;
.db 50h ; P
.db 0Eh ;
.db 50h ; P
.db 0Eh ;
.db 0B7h ; ·
.db 2Ah ; *
.db 0EBh ; ë
.db 2Ch ; ,
.db 0EDh ; í
.db 5Bh ; [
.db 0EFh ; ï
.db 2Ch ; ,
.db 0EDh ; í
.db 52h ; R
.db 0DAh ; Ú
.db 4Eh ; N
.db 0Fh ;
.db 0CDh ; Í
.db 0A0h ;
.db 8 ;
.db 21h ; !
.db 0 ;
.db 0 ;
.db 22h ; "
.db 0F9h ; ù
.db 2Ch ; ,
.db 0CDh ; Í
.db 2Fh ; /
.db 0Eh ;
.db 0DAh ; Ú
.db 38h ; 8
.db 0Fh ;
.db 0CDh ; Í
.db 0A2h ; ¢
.db 0Fh ;
.db 0CCh ; Ì
.db 0EDh ; í
.db 7 ;
.db 0C4h ; Ä
.db 85h ; ?
.db 8 ;
.db 2Ah ; *
.db 0EBh ; ë
.db 2Ch ; ,
.db 0EDh ; í
.db 4Bh ; K
.db 0EFh ; ï
.db 2Ch ; ,
.db 0EDh ; í
.db 42h ; B
.db 0CAh ; Ê
.db 4Eh ; N
.db 0Fh ;
.db 3 ;
.db 0EDh ; í
.db 43h ; C
.db 0EFh ; ï
.db 2Ch ; ,
.db 2Ah ; *
.db 0F9h ; ù
.db 2Ch ; ,
.db 23h ; #
.db 22h ; "
.db 0F9h ; ù
.db 2Ch ; ,
.db 2Ah ; *
.db 0EDh ; í
.db 2Ch ; ,
.db 77h ; w
.db 23h ; #
.db 22h ; "
.db 0EDh ; í
.db 2Ch ; ,
.db 18h ;
.db 0CFh ; Ï
.db 0E8h ; è
.db 0E9h ; é
.db 0EAh ; ê
.db 0EBh ; ë
.db 98h ; ?
.db 0FFh ; ÿ
.db 0FEh ; þ
.db 52h ; R
.db 0Fh ;
.db 4Eh ; N
.db 0Fh ;
.db 54h ; T
.db 0Fh ;
.db 58h ; X
.db 0Fh ;
.db 58h ; X
.db 0Fh ;
.db 58h ; X
.db 0Fh ;
.db 58h ; X
.db 0Fh ;
.db 0E8h ; è
.db 0E9h ; é
.db 0EAh ; ê
.db 0EBh ; ë
.db 98h ; ?
.db 0FFh ; ÿ
.db 0FEh ; þ
.db 52h ; R
.db 0Fh ;
.db 4Eh ; N
.db 0Fh ;
.db 54h ; T
.db 0Fh ;
.db 7Ch ; |
.db 0Fh ;
.db 7Ch ; |
.db 0Fh ;
.db 7Ch ; |
.db 0Fh ;
.db 7Ch ; |
.db 0Fh ;
.db 21h ; !
.db 23h ; #
.db 0Fh ;
.db 1 ;
.db 7 ;
.db 0 ;
.db 0CDh ; Í
.db 0A2h ; ¢
.db 0Fh ;
.db 28h ; (
.db 6 ;
.db 21h ; !
.db 0Eh ;
.db 0Fh ;
.db 1 ;
.db 7 ;
.db 0 ;
.db 0EDh ; í
.db 0B1h ; ±
.db 0CAh ; Ê
.db 7Fh ; 
.db 6 ;
.db 3Eh ; >
.db 0FFh ; ÿ
.db 37h ; 7
.db 0C9h ; É
.db 37h ; 7
.db 0C9h ; É
.db 3Eh ; >
.db 10h ;
.db 37h ; 7
.db 0C9h ; É
.db 32h ; 2
.db 0FDh ; ý
.db 2Ch ; ,
.db 0E6h ; æ
.db 7Fh ; 
.db 0CDh ; Í
.db 85h ; ?
.db 8 ;
.db 6 ;
.db 2 ;
.db 0C5h ; Å
.db 0CDh ; Í
.db 2Fh ; /
.db 0Eh ;
.db 0CDh ; Í
.db 85h ; ?
.db 8 ;
.db 0C1h ; Á
.db 0DAh ; Ú
.db 38h ; 8
.db 0Fh ;
.db 10h ;
.db 0F3h ; ó
.db 7Ch ; |
.db 0B5h ; µ
.db 28h ; (
.db 4 ;
.db 3Eh ; >
.db 0FFh ; ÿ
.db 37h ; 7
.db 0C9h ; É
.db 3Ah ; :
.db 0FDh ; ý
.db 2Ch ; ,
.db 0B7h ; ·
.db 0C9h ; É
.db 32h ; 2
.db 0FDh ; ý
.db 2Ch ; ,
.db 0E6h ; æ
.db 7Fh ; 
.db 0CDh ; Í
.db 0EDh ; í
.db 7 ;
.db 6 ;
.db 4 ;
.db 0C5h ; Å
.db 0CDh ; Í
.db 2Fh ; /
.db 0Eh ;
.db 0CDh ; Í
.db 0EDh ; í
.db 7 ;
.db 0C1h ; Á
.db 0DAh ; Ú
.db 38h ; 8
.db 0Fh ;
.db 10h ;
.db 0F3h ; ó
.db 21h ; !
.db 99h ; ?
.db 28h ; (
.db 11h ;
.db 0E9h ; é
.db 7 ;
.db 0CDh ; Í
.db 0D3h ; Ó
.db 6 ;
.db 0CAh ; Ê
.db 77h ; w
.db 0Fh ;
.db 0C3h ; Ã
.db 73h ; s
.db 0Fh ;
.db 5Fh ; _
.db 3Ah ; :
.db 9Eh ; ?
.db 2Ch ; ,
.db 0FEh ; þ
.db 20h ;
.db 7Bh ; {
.db 0C9h ; É
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_FAA: ; CODE XREF: seg000:0AE5p sub_0_BD3+1Ap
; ...
ld hl, 2CE9h
ld de, 2CEDh
ldi
ldi
ld hl, 0
ld (2CEFh), hl
; End of function sub_0_FAA
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_FBA: ; CODE XREF: sub_0_11FA+4Ep
ld hl, 2CEDh
ld de, 2CF3h
loc_0_FC0: ; CODE XREF: sub_0_FC9+6j
ldi
ldi
ldi
ldi
ret
; End of function sub_0_FBA
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_FC9: ; CODE XREF: sub_0_BD3+1Dp
; sub_0_11FA+56p ...
ld hl, 2CF3h
ld de, 2CEDh
jr loc_0_FC0
; End of function sub_0_FC9
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_FD1: ; CODE XREF: sub_0_BD3+37p
xor a
ld (2D01h), a
ld hl, 400h
ld (2CFEh), hl
loc_0_FDB: ; CODE XREF: sub_0_FD1+61j
ld a, 5
ld (2D00h), a
ld b, 64h
call sub_0_DE7
jp c, loc_0_108A
ld hl, 109Eh
ld bc, 3
cpir
jp z, sub_0_67F
jr loc_0_1024
;----------------------------------------------------------------------------
.db 21h ; !
.db 0 ;
.db 2Dh ; -
.db 35h ; 5
.db 3Eh ; >
.db 10h ;
.db 0CAh ; Ê
.db 8Ah ; ?
.db 10h ;
.db 6 ;
.db 0Ah ;
.db 0CDh ; Í
.db 0E7h ; ç
.db 0Dh ;
.db 38h ; 8
.db 0DBh ; Û
.db 21h ; !
.db 0A7h ; §
.db 10h ;
.db 1 ;
.db 2 ;
.db 0 ;
.db 0EDh ; í
.db 0B1h ; ±
.db 0CAh ; Ê
.db 7Fh ; 
.db 6 ;
.db 18h ;
.db 12h ;
.db 21h ; !
.db 0 ;
.db 2Dh ; -
.db 35h ; 5
.db 3Eh ; >
.db 10h ;
.db 0CAh ; Ê
.db 8Ah ; ?
.db 10h ;
.db 18h ;
.db 0C3h ; Ã
.db 6 ;
.db 0Ah ;
.db 0CDh ; Í
.db 0E7h ; ç
.db 0Dh ;
.db 38h ; 8
.db 11h ;
;----------------------------------------------------------------------------
loc_0_1024: ; CODE XREF: sub_0_FD1+22j
ld hl, (2CFEh)
dec hl
ld (2CFEh), hl
ld a, h
or l
ld a, 0FCh
jp z, loc_0_108A
jp loc_0_FDB
;----------------------------------------------------------------------------
.db 3Eh ; >
.db 0FFh ; ÿ
.db 0C3h ; Ã
.db 8Ah ; ?
.db 10h ;
.db 3Eh ; >
.db 5 ;
.db 32h ; 2
.db 0 ;
.db 2Dh ; -
.db 0CDh ; Í
.db 5 ;
.db 0Eh ;
.db 38h ; 8
.db 46h ; F
.db 21h ; !
.db 0ADh ; ­
.db 10h ;
.db 1 ;
.db 2 ;
.db 0 ;
.db 0EDh ; í
.db 0B1h ; ±
.db 0CAh ; Ê
.db 7Fh ; 
.db 6 ;
.db 18h ;
.db 0D3h ; Ó
.db 0CDh ; Í
.db 5 ;
.db 0Eh ;
.db 38h ; 8
.db 34h ; 4
.db 21h ; !
.db 0B3h ; ³
.db 10h ;
.db 1 ;
.db 4 ;
.db 0 ;
.db 0EDh ; í
.db 0B1h ; ±
.db 0CAh ; Ê
.db 7Fh ; 
.db 6 ;
.db 18h ;
.db 0C1h ; Á
.db 3Eh ; >
.db 10h ;
.db 32h ; 2
.db 9Eh ; ?
.db 2Ch ; ,
.db 0CDh ; Í
.db 3Fh ; ?
.db 11h ;
.db 18h ;
.db 12h ;
.db 3Eh ; >
.db 10h ;
.db 32h ; 2
.db 9Eh ; ?
.db 2Ch ; ,
.db 0CDh ; Í
.db 0 ;
.db 11h ;
.db 18h ;
.db 8 ;
.db 3Eh ; >
.db 20h ;
.db 32h ; 2
.db 9Eh ; ?
.db 2Ch ; ,
.db 0CDh ; Í
.db 0C5h ; Å
.db 10h ;
.db 0F5h ; õ
.db 21h ; !
.db 0A7h ; §
.db 2Ch ; ,
.db 11h ;
.db 0E4h ; ä
.db 2Ch ; ,
.db 0CDh ; Í
.db 92h ; ?
.db 6 ;
.db 0F1h ; ñ
;----------------------------------------------------------------------------
loc_0_108A: ; CODE XREF: sub_0_FD1+14j
; sub_0_FD1+5Ej
ld hl, 10BFh
ld bc, 6
cpir
jr nz, loc_0_109C
cp 98h
jr nz, loc_0_109A
ld a, 10h
loc_0_109A: ; CODE XREF: sub_0_FD1+C5j
scf
ret
;----------------------------------------------------------------------------
loc_0_109C: ; CODE XREF: sub_0_FD1+C1j
or a
ret
; End of function sub_0_FD1
;----------------------------------------------------------------------------
.db 18h ;
.db 0AAh ; ª
.db 2Ah ; *
.db 3Ah ; :
.db 10h ;
.db 3Ah ; :
.db 10h ;
.db 0F5h ; õ
.db 0Fh ;
.db 6Bh ; k
.db 18h ;
.db 12h ;
.db 10h ;
.db 1Dh ;
.db 10h ;
.db 2Ah ; *
.db 18h ;
.db 51h ; Q
.db 10h ;
.db 3Fh ; ?
.db 10h ;
.db 43h ; C
.db 41h ; A
.db 42h ; B
.db 18h ;
.db 0F5h ; õ
.db 0Fh ;
.db 63h ; c
.db 10h ;
.db 6Dh ; m
.db 10h ;
.db 77h ; w
.db 10h ;
.db 98h ; ?
.db 6 ;
.db 10h ;
.db 0FFh ; ÿ
.db 0FEh ; þ
.db 0FCh ; ü
.db 0CDh ; Í
.db 0A0h ;
.db 8 ;
.db 0CDh ; Í
.db 2Fh ; /
.db 0Eh ;
.db 0D8h ; Ø
.db 32h ; 2
.db 1 ;
.db 2Dh ; -
.db 0CDh ; Í
.db 0EDh ; í
.db 7 ;
.db 21h ; !
.db 0A7h ; §
.db 2Ch ; ,
.db 6 ;
.db 4 ;
.db 0C5h ; Å
.db 0E5h ; å
.db 0CDh ; Í
.db 2Fh ; /
.db 0Eh ;
.db 0CDh ; Í
.db 0EDh ; í
.db 7 ;
.db 0E1h ; á
.db 0C1h ; Á
.db 77h ; w
.db 23h ; #
.db 0D8h ; Ø
.db 10h ;
.db 0F1h ; ñ
.db 6 ;
.db 4 ;
.db 0C5h ; Å
.db 0CDh ; Í
.db 2Fh ; /
.db 0Eh ;
.db 0CDh ; Í
.db 0EDh ; í
.db 7 ;
.db 0C1h ; Á
.db 0D8h ; Ø
.db 10h ;
.db 0F5h ; õ
.db 21h ; !
.db 99h ; ?
.db 28h ; (
.db 11h ;
.db 0E9h ; é
.db 7 ;
.db 0CDh ; Í
.db 0D3h ; Ó
.db 6 ;
.db 28h ; (
.db 34h ; 4
.db 18h ;
.db 3Bh ; ;
.db 0CDh ; Í
.db 0A0h ;
.db 8 ;
.db 0CDh ; Í
.db 2Fh ; /
.db 0Eh ;
.db 0D8h ; Ø
.db 32h ; 2
.db 1 ;
.db 2Dh ; -
.db 0CDh ; Í
.db 85h ; ?
.db 8 ;
.db 21h ; !
.db 0A7h ; §
.db 2Ch ; ,
.db 6 ;
.db 4 ;
.db 0C5h ; Å
.db 0E5h ; å
.db 0CDh ; Í
.db 2Fh ; /
.db 0Eh ;
.db 0CDh ; Í
.db 85h ; ?
.db 8 ;
.db 0E1h ; á
.db 0C1h ; Á
.db 77h ; w
.db 23h ; #
.db 0D8h ; Ø
.db 10h ;
.db 0F1h ; ñ
.db 6 ;
.db 2 ;
.db 0C5h ; Å
.db 0CDh ; Í
.db 2Fh ; /
.db 0Eh ;
.db 0CDh ; Í
.db 85h ; ?
.db 8 ;
.db 0C1h ; Á
.db 0D8h ; Ø
.db 10h ;
.db 0F5h ; õ
.db 7Ch ; |
.db 0B5h ; µ
.db 20h ;
.db 9 ;
.db 3Eh ; >
.db 0FFh ; ÿ
.db 32h ; 2
.db 0A6h ; ¦
.db 2Ch ; ,
.db 3Ah ; :
.db 1 ;
.db 2Dh ; -
.db 0C9h ; É
.db 3Eh ; >
.db 0FFh ; ÿ
.db 37h ; 7
.db 0C9h ; É
.db 0CDh ; Í
.db 0A0h ;
.db 8 ;
.db 0CDh ; Í
.db 94h ; ?
.db 11h ;
.db 0D8h ; Ø
.db 32h ; 2
.db 1 ;
.db 2Dh ; -
.db 0CDh ; Í
.db 85h ; ?
.db 8 ;
.db 21h ; !
.db 0A7h ; §
.db 2Ch ; ,
.db 6 ;
.db 4 ;
.db 0C5h ; Å
.db 0E5h ; å
.db 0CDh ; Í
.db 94h ; ?
.db 11h ;
.db 30h ; 0
.db 3 ;
.db 0E1h ; á
.db 0C1h ; Á
.db 0C9h ; É
.db 0CDh ; Í
.db 85h ; ?
.db 8 ;
.db 0E1h ; á
.db 0C1h ; Á
.db 77h ; w
.db 23h ; #
.db 10h ;
.db 0EDh ; í
.db 6 ;
.db 2 ;
.db 0C5h ; Å
.db 0CDh ; Í
.db 94h ; ?
.db 11h ;
.db 30h ; 0
.db 2 ;
.db 0C1h ; Á
.db 0C9h ; É
.db 0CDh ; Í
.db 85h ; ?
.db 8 ;
.db 0C1h ; Á
.db 10h ;
.db 0F2h ; ò
.db 7Ch ; |
.db 0B5h ; µ
.db 20h ;
.db 18h ;
.db 6 ;
.db 0Ah ;
.db 0CDh ; Í
.db 0E7h ; ç
.db 0Dh ;
.db 0FEh ; þ
.db 0Dh ;
.db 20h ;
.db 5 ;
.db 6 ;
.db 0Ah ;
.db 0CDh ; Í
.db 0E7h ; ç
.db 0Dh ;
.db 0B7h ; ·
.db 3Eh ; >
.db 0FFh ; ÿ
.db 32h ; 2
.db 0A6h ; ¦
.db 2Ch ; ,
.db 3Ah ; :
.db 1 ;
.db 2Dh ; -
.db 0C9h ; É
.db 3Eh ; >
.db 0FFh ; ÿ
.db 37h ; 7
.db 0C9h ; É
.db 0CDh ; Í
.db 5 ;
.db 0Eh ;
.db 0D8h ; Ø
.db 0CDh ; Í
.db 0B3h ; ³
.db 11h ;
.db 20h ;
.db 12h ;
.db 7 ;
.db 7 ;
.db 7 ;
.db 7 ;
.db 47h ; G
.db 0C5h ; Å
.db 0CDh ; Í
.db 5 ;
.db 0Eh ;
.db 0C1h ; Á
.db 0D8h ; Ø
.db 0CDh ; Í
.db 0B3h ; ³
.db 11h ;
.db 20h ;
.db 2 ;
.db 0B0h ; °
.db 0C9h ; É
.db 3Eh ; >
.db 0FFh ; ÿ
.db 37h ; 7
.db 0C9h ; É
.db 6Fh ; o
.db 0D6h ; Ö
.db 30h ; 0
.db 0FEh ; þ
.db 0Ah ;
.db 38h ; 8
.db 2 ;
.db 0D6h ; Ö
.db 27h ; '
.db 6Fh ; o
.db 0E6h ; æ
.db 0F0h ; ð
.db 7Dh ; }
.db 0C9h ; É
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_11C1: ; CODE XREF: sub_0_8D1+63p
; sub_0_11C1+30j
ld a, 0FFh
ld (2D02h), a
call sub_0_FAA
ld a, (2C9Eh)
cp 10h
ld a, 43h
jr z, loc_0_11D4
ld a, 15h
loc_0_11D4: ; CODE XREF: sub_0_11C1+Fj
call loc_0_145C
ld b, 64h
call sub_0_1289
or a
jr z, loc_0_11F3
cp 0F6h
jr z, loc_0_11E7
ld a, 0FFh
scf
ret
;----------------------------------------------------------------------------
loc_0_11E7: ; CODE XREF: sub_0_11C1+20j
ld a, 6
call loc_0_145C
ld b, 0Ah
call sub_0_DE7
jr sub_0_11C1
;----------------------------------------------------------------------------
loc_0_11F3: ; CODE XREF: sub_0_11C1+1Cj
ld a, 6
call loc_0_145C
xor a
ret
; End of function sub_0_11C1
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_11FA: ; CODE XREF: sub_0_8D1+6Fp
; sub_0_8D1+7Dp ...
ld a, 0FFh
ld (2D02h), a
ld (2CA3h), a
xor a
ld (2D07h), a
call sub_0_FAA
ld hl, 2CABh
call sub_0_688
ld a, (2C9Eh)
cp 10h
ld a, 43h
jr z, loc_0_121A
ld a, 15h
loc_0_121A: ; CODE XREF: sub_0_11FA+1Cj
call loc_0_145C
loc_0_121D: ; CODE XREF: sub_0_11FA+5Ej
ld a, (2D07h)
or a
ld b, 82h
jr z, loc_0_1227
ld b, 32h
loc_0_1227: ; CODE XREF: sub_0_11FA+29j
call sub_0_1289
jr c, loc_0_125A
push af
call sub_0_50B
pop af
ld hl, 2D07h
cp (hl)
jr z, loc_0_1250
dec a
cp (hl)
jr nz, loc_0_126D
inc (hl)
ld de, 2CEFh
ld hl, 2CABh
ld bc, 2CABh
call sub_0_6E4
call sub_0_FBA
call sub_0_D30
jr c, loc_0_1285
loc_0_1250: ; CODE XREF: sub_0_11FA+3Bj
call sub_0_FC9
ld a, 6
call loc_0_145C
jr loc_0_121D
;----------------------------------------------------------------------------
loc_0_125A: ; CODE XREF: sub_0_11FA+30j
cp 0F6h
jr nz, loc_0_126D
call sub_0_D0E
jr c, loc_0_1285
call sub_0_643
ld a, 6
call loc_0_145C
xor a
ret
;----------------------------------------------------------------------------
loc_0_126D: ; CODE XREF: sub_0_11FA+3Fj
; sub_0_11FA+62j
cp 0FFh
jr nz, loc_0_1285
ld a, (2D02h)
cp 0FFh
jr nz, loc_0_1285
ld a, (2C9Eh)
or a
jr z, loc_0_1285
xor a
ld (2C9Eh), a
jp sub_0_11FA
;----------------------------------------------------------------------------
loc_0_1285: ; CODE XREF: sub_0_11FA+54j
; sub_0_11FA+67j ...
ld a, 0FFh
scf
ret
; End of function sub_0_11FA
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_1289: ; CODE XREF: sub_0_11C1+18p
; sub_0_11FA+2Dp
ld a, b
ld (2D03h), a
xor a
ld (2D04h), a
ld a, 0
ld (2D09h), a
loc_0_1296: ; CODE XREF: sub_0_1289+12Aj
ld a, (2D03h)
ld b, a
call sub_0_DE7
ld (2D08h), a
ld hl, 12AEh
ld bc, 4
cpir
jp z, sub_0_67F
jp loc_0_137A
;----------------------------------------------------------------------------
.db 2 ;
.db 1 ;
.db 4 ;
.db 18h ;
.db 6Ah ; j
.db 13h ;
.db 5Fh ; _
.db 13h ;
.db 0BFh ; ¿
.db 12h ;
.db 0BAh ; º
.db 12h ;
.db 21h ; !
.db 0 ;
.db 4 ;
.db 18h ;
.db 3 ;
.db 21h ; !
.db 80h ; ?
.db 0 ;
.db 22h ; "
.db 5 ;
.db 2Dh ; -
.db 6 ;
.db 0Ah ;
.db 0CDh ; Í
.db 0E7h ; ç
.db 0Dh ;
.db 32h ; 2
.db 0D9h ; Ù
.db 12h ;
.db 0DAh ; Ú
.db 7Ah ; z
.db 13h ;
.db 6 ;
.db 0Ah ;
.db 0CDh ; Í
.db 0E7h ; ç
.db 0Dh ;
.db 0DAh ; Ú
.db 7Ah ; z
.db 13h ;
.db 0C6h ; Æ
.db 0 ;
.db 0FEh ; þ
.db 0FFh ; ÿ
.db 0C2h ; Â
.db 7Ah ; z
.db 13h ;
.db 0CDh ; Í
.db 0A0h ;
.db 8 ;
.db 0DDh ; Ý
.db 2Ah ; *
.db 0EDh ; í
.db 2Ch ; ,
.db 6 ;
.db 0Ah ;
.db 0DDh ; Ý
.db 0E5h ; å
.db 0CDh ; Í
.db 0E7h ; ç
.db 0Dh ;
.db 0DDh ; Ý
.db 0E1h ; á
.db 32h ; 2
.db 8 ;
.db 2Dh ; -
.db 0DAh ; Ú
.db 7Ah ; z
.db 13h ;
.db 0DDh ; Ý
.db 77h ; w
.db 0 ;
.db 0DDh ; Ý
.db 23h ; #
.db 0CDh ; Í
.db 0DDh ; Ý
.db 7 ;
.db 0CDh ; Í
.db 85h ; ?
.db 8 ;
.db 0EDh ; í
.db 4Bh ; K
.db 0EFh ; ï
.db 2Ch ; ,
.db 3 ;
.db 0EDh ; í
.db 43h ; C
.db 0EFh ; ï
.db 2Ch ; ,
.db 0EDh ; í
.db 5Bh ; [
.db 5 ;
.db 2Dh ; -
.db 1Bh ;
.db 0EDh ; í
.db 53h ; S
.db 5 ;
.db 2Dh ; -
.db 7Ah ; z
.db 0B3h ; ³
.db 20h ;
.db 0D0h ; Ð
.db 0DDh ; Ý
.db 22h ; "
.db 0EDh ; í
.db 2Ch ; ,
.db 6 ;
.db 0Ah ;
.db 0CDh ; Í
.db 0E7h ; ç
.db 0Dh ;
.db 32h ; 2
.db 8 ;
.db 2Dh ; -
.db 0DAh ; Ú
.db 7Ah ; z
.db 13h ;
.db 3Ah ; :
.db 9Eh ; ?
.db 2Ch ; ,
.db 0FEh ; þ
.db 10h ;
.db 20h ;
.db 26h ; &
.db 3Ah ; :
.db 8 ;
.db 2Dh ; -
.db 0CDh ; Í
.db 85h ; ?
.db 8 ;
.db 6 ;
.db 0Ah ;
.db 0CDh ; Í
.db 0E7h ; ç
.db 0Dh ;
.db 32h ; 2
.db 8 ;
.db 2Dh ; -
.db 0DAh ; Ú
.db 7Ah ; z
.db 13h ;
.db 0CDh ; Í
.db 85h ; ?
.db 8 ;
.db 7Ch ; |
.db 0B5h ; µ
.db 0C2h ; Â
.db 7Ah ; z
.db 13h ;
.db 0AFh ; ¯
.db 32h ; 2
.db 4 ;
.db 2Dh ; -
.db 3Eh ; >
.db 0 ;
.db 32h ; 2
.db 2 ;
.db 2Dh ; -
.db 3Ah ; :
.db 0D9h ; Ù
.db 12h ;
.db 0C9h ; É
.db 3Ah ; :
.db 8 ;
.db 2Dh ; -
.db 6Fh ; o
.db 3Ah ; :
.db 0DFh ; ß
.db 7 ;
.db 95h ; ?
.db 28h ; (
.db 0E9h ; é
.db 0C3h ; Ã
.db 7Ah ; z
.db 13h ;
.db 6 ;
.db 0Ah ;
.db 0CDh ; Í
.db 0E7h ; ç
.db 0Dh ;
.db 3Eh ; >
.db 0F6h ; ö
.db 0D8h ; Ø
.db 0C3h ; Ã
.db 7Ah ; z
.db 13h ;
.db 3Eh ; >
.db 0FFh ; ÿ
.db 21h ; !
.db 9 ;
.db 2Dh ; -
.db 0BEh ; ¾
.db 20h ;
.db 4 ;
.db 3Eh ; >
.db 0FFh ; ÿ
.db 37h ; 7
.db 0C9h ; É
.db 77h ; w
.db 0C3h ; Ã
.db 0A4h ; ¤
.db 13h ;
;----------------------------------------------------------------------------
loc_0_137A: ; CODE XREF: sub_0_1289+22j
ld a, 0
ld (2D09h), a
loc_0_137F: ; CODE XREF: sub_0_1289+FBj
ld b, 0Ah
call sub_0_DE7
jr nc, loc_0_137F
ld a, (2D02h)
cp 0FFh
jr nz, loc_0_139A
ld a, (2C9Eh)
cp 10h
ld a, 43h
jr z, loc_0_13A1
ld a, 15h
jr loc_0_13A1
;----------------------------------------------------------------------------
loc_0_139A: ; CODE XREF: sub_0_1289+102j
ld a, 28h
ld (2D03h), a
ld a, 15h
loc_0_13A1: ; CODE XREF: sub_0_1289+10Bj
; sub_0_1289+10Fj
call loc_0_145C
call sub_0_FC9
ld hl, 2D04h
inc (hl)
call sub_0_482
ld a, (2D04h)
cp 5
jp nz, loc_0_1296
ld a, 0FFh
scf
ret
; End of function sub_0_1289
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_13BA: ; CODE XREF: sub_0_BD3+34p
ld (2CE8h), a
ld hl, 1403h
call sub_0_DDC
call sub_0_8A0
ld a, (2CE8h)
call loc_0_885
call sub_0_1418
ld hl, 2CE0h
ld b, 4
loc_0_13D4: ; CODE XREF: sub_0_13BA+26j
push bc
ld a, (hl)
inc hl
push hl
call loc_0_885
call sub_0_1418
pop hl
pop bc
djnz loc_0_13D4
ld a, (word_0_887+1)
call sub_0_1418
ld a, (word_0_887)
call sub_0_1418
ld a, 0Dh
call loc_0_145C
ld a, 0Ah
call loc_0_145C
ld a, (2CE8h)
cp 8
ret z
ld a, 11h
jp loc_0_145C
; End of function sub_0_13BA
;----------------------------------------------------------------------------
.db 2Ah ; *
.db 2Ah ; *
.db 18h ;
.db 42h ; B
.db 0 ;
.db 30h ; 0
.db 31h ; 1
.db 32h ; 2
.db 33h ; 3
.db 34h ; 4
.db 35h ; 5
.db 36h ; 6
.db 37h ; 7
.db 38h ; 8
.db 39h ; 9
.db 61h ; a
.db 62h ; b
.db 63h ; c
.db 64h ; d
.db 65h ; e
.db 66h ; f
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_1418: ; CODE XREF: sub_0_13BA+12p
; sub_0_13BA+21p ...
push af
ld hl, 1408h
ld b, 0
rra
rra
rra
rra
and 0Fh
ld c, a
add hl, bc
ld a, (hl)
call loc_0_145C
pop af
ld hl, 1408h
ld b, 0
and 0Fh
ld c, a
add hl, bc
ld a, (hl)
jp loc_0_145C
; End of function sub_0_1418
;----------------------------------------------------------------------------
.db 32h ; 2
.db 5Bh ; [
.db 14h ;
.db 1 ;
.db 9 ;
.db 0 ;
.db 21h ; !
.db 77h ; w
.db 14h ;
.db 0EDh ; í
.db 0B1h ; ±
.db 0CAh ; Ê
.db 7Fh ; 
.db 6 ;
.db 0E6h ; æ
.db 60h ; `
.db 20h ;
.db 10h ;
.db 3Ah ; :
.db 9Dh ; 
.db 2Ch ; ,
.db 0B7h ; ·
.db 28h ; (
.db 0Ah ;
.db 21h ; !
.db 5Bh ; [
.db 14h ;
.db 0CBh ; Ë
.db 0F6h ; ö
.db 3Eh ; >
.db 18h ;
.db 0CDh ; Í
.db 5Ch ; \
.db 14h ;
.db 3Eh ; >
.db 0 ;
;----------------------------------------------------------------------------
loc_0_145C: ; CODE XREF: sub_0_DDC+5p sub_0_11C1+13p
; ...
ld (byte_0_1468), a
loc_0_145F: ; CODE XREF: seg000:1465j
call sub_0_588
call sub_0_5CD
jr z, loc_0_145F
;----------------------------------------------------------------------------
.db 3Eh ; >
byte_0_1468: .db 0 ; DATA XREF: seg000:145Cw
.db 0C3h ; Ã
.db 0C7h ; Ç
.db 5 ;
.db 3Ah ; :
.db 68h ; h
.db 14h ;
.db 0E6h ; æ
.db 7Fh ; 
.db 0FEh ; þ
.db 40h ; @
.db 20h ;
.db 0E5h ; å
.db 18h ;
.db 0D9h ; Ù
.db 18h ;
.db 0Dh ;
.db 8Dh ; 
.db 10h ;
.db 90h ; 
.db 11h ;
.db 91h ; ?
.db 13h ;
.db 93h ; ?
.db 50h ; P
.db 14h ;
.db 50h ; P
.db 14h ;
.db 50h ; P
.db 14h ;
.db 50h ; P
.db 14h ;
.db 50h ; P
.db 14h ;
.db 50h ; P
.db 14h ;
.db 6Ch ; l
.db 14h ;
.db 6Ch ; l
.db 14h ;
.db 50h ; P
.db 14h ;
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_1492: ; CODE XREF: start+56p sub_0_961+79p
push bc
ld (2D0Ah), a
call sub_0_171E
push de
call sub_0_162C
ld (de), a
pop de
push de
call sub_0_14A7
pop de
pop bc
jr loc_0_151D
; End of function sub_0_1492
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_14A7: ; CODE XREF: sub_0_1492+Ep
xor a
ld (de), a
ld (2D0Dh), a
ld (2D0Ch), a
call sub_0_1687
ld a, c
ld (2D0Eh), a
push de
ld a, (hl)
cp 3Ah
jr nz, loc_0_14BD
inc hl
loc_0_14BD: ; CODE XREF: sub_0_14A7+13j
ld b, 8
call sub_0_1522
pop de
ld a, (hl)
ld (2D0Bh), a
cp 3Ah
jr nz, loc_0_14FE
inc hl
ld a, (2D0Ah)
or a
jr z, loc_0_14D7
call sub_0_154A
jr z, loc_0_14E5
loc_0_14D7: ; CODE XREF: sub_0_14A7+29j
call sub_0_159D
jr z, loc_0_14E5
ld a, (2D0Ah)
or a
jr nz, loc_0_14E5
call sub_0_154A
loc_0_14E5: ; CODE XREF: sub_0_14A7+2Ej
; sub_0_14A7+33j ...
ld a, (2D0Dh)
ld (de), a
push de
inc de
call sub_0_1632
pop de
xor a
ld (2D0Ch), a
push de
ld b, 8
call sub_0_1522
pop de
ld a, (hl)
ld (2D0Bh), a
loc_0_14FE: ; CODE XREF: sub_0_14A7+22j
ld a, (2D0Bh)
ex de, hl
ld bc, 8
add hl, bc
ex de, hl
ld b, 3
cp 2Eh
jr nz, loc_0_1513
inc hl
push de
call sub_0_1522
pop de
loc_0_1513: ; CODE XREF: sub_0_14A7+64j
ex de, hl
ld bc, 5
add hl, bc
ex de, hl
ld a, (2D0Eh)
ld (de), a
loc_0_151D: ; CODE XREF: sub_0_1492+13j
ld a, (2D0Ch)
or a
ret
; End of function sub_0_14A7
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_1522: ; CODE XREF: sub_0_14A7+18p
; sub_0_14A7+4Fp ...
call sub_0_15D9
ret z
inc de
cp 2Ah
jr nz, loc_0_1533
ld a, 3Fh
ld (de), a
call sub_0_1543
jr loc_0_153A
;----------------------------------------------------------------------------
loc_0_1533: ; CODE XREF: sub_0_1522+7j
ld (de), a
inc hl
cp 3Fh
call z, sub_0_1543
loc_0_153A: ; CODE XREF: sub_0_1522+Fj
djnz sub_0_1522
loc_0_153C: ; CODE XREF: sub_0_1522+1Fj
call sub_0_15D9
ret z
inc hl
jr loc_0_153C
; End of function sub_0_1522
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_1543: ; CODE XREF: sub_0_1522+Cp
; sub_0_1522+15p
push hl
ld hl, 2D0Ch
inc (hl)
pop hl
ret
; End of function sub_0_1543
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_154A: ; CODE XREF: sub_0_14A7+2Bp
; sub_0_14A7+3Bp
push hl
push de
call sub_0_1552
pop de
pop hl
ret
; End of function sub_0_154A
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_1552: ; CODE XREF: sub_0_154A+2p
call sub_0_164A
jr z, loc_0_15CA
ex de, hl
inc hl
call sub_0_1652
ld b, a
inc b
ld a, (hl)
cp 41h
jr c, loc_0_1574
sub 40h
cp b
jr nc, loc_0_15CA
ld (2D0Dh), a
inc hl
ld a, (hl)
cp 20h
ret z
call sub_0_1625
ret c
loc_0_1574: ; CODE XREF: sub_0_1552+Fj
push hl
ld b, 2
loc_0_1577: ; CODE XREF: sub_0_1552+30j
ld a, (hl)
cp 20h
jr z, loc_0_1589
call sub_0_1625
jr c, loc_0_159A
inc hl
djnz loc_0_1577
ld a, (hl)
cp 20h
jr nz, loc_0_159A
loc_0_1589: ; CODE XREF: sub_0_1552+28j
pop hl
call sub_0_165A
ld c, a
inc c
call sub_0_15FA
cp c
jr nc, loc_0_15CA
ld (2D0Eh), a
xor a
ret
;----------------------------------------------------------------------------
loc_0_159A: ; CODE XREF: sub_0_1552+2Dj
; sub_0_1552+35j
pop hl
jr loc_0_15CA
; End of function sub_0_1552
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_159D: ; CODE XREF: sub_0_14A7+30p
push hl
push de
call sub_0_15A5
pop de
pop hl
ret
; End of function sub_0_159D
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_15A5: ; CODE XREF: sub_0_159D+2p
call sub_0_1662
jr z, loc_0_15CA
ex de, hl
inc hl
loc_0_15AC: ; CODE XREF: sub_0_15A5+23j
ld a, (de)
or a
jr z, loc_0_15CA
inc de
inc de
push hl
push de
ld b, 8
loc_0_15B6: ; CODE XREF: sub_0_15A5+17j
ld a, (de)
cp (hl)
jr nz, loc_0_15BE
inc hl
inc de
djnz loc_0_15B6
loc_0_15BE: ; CODE XREF: sub_0_15A5+13j
pop de
pop hl
jr z, loc_0_15CD
ex de, hl
ld bc, 10h
add hl, bc
ex de, hl
jr loc_0_15AC
;----------------------------------------------------------------------------
loc_0_15CA: ; CODE XREF: sub_0_1552+3j
; sub_0_1552+14j ...
or 0FFh
ret
;----------------------------------------------------------------------------
loc_0_15CD: ; CODE XREF: sub_0_15A5+1Bj
dec de
ld a, (de)
ld (2D0Eh), a
dec de
ld a, (de)
ld (2D0Dh), a
xor a
ret
; End of function sub_0_15A5
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_15D9: ; CODE XREF: sub_0_1522p sub_0_1522+1Ap
; ...
ld a, (hl)
cp 21h
jr c, loc_0_15F8
cp 3Dh
ret z
cp 5Fh
ret z
cp 2Eh
ret z
cp 3Ah
ret z
cp 2Ch
ret z
cp 3Ch
ret z
cp 3Eh
ret z
or a
ret z
cp 3Bh
ret
;----------------------------------------------------------------------------
loc_0_15F8: ; CODE XREF: sub_0_15D9+3j
xor a
ret
; End of function sub_0_15D9
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_15FA: ; CODE XREF: sub_0_1552+3Dp
push bc
ld bc, 1100h
loc_0_15FE: ; CODE XREF: sub_0_15FA+22j
ld a, (hl)
call sub_0_15D9
jr z, loc_0_161E
inc hl
call sub_0_1625
jr c, loc_0_1622
ld d, a
ld a, c
rlca
jr c, loc_0_1622
rlca
jr c, loc_0_1622
add a, c
jr c, loc_0_1622
rlca
jr c, loc_0_1622
add a, d
jr c, loc_0_1622
ld c, a
djnz loc_0_15FE
loc_0_161E: ; CODE XREF: sub_0_15FA+8j
ld a, c
pop bc
or a
ret
;----------------------------------------------------------------------------
loc_0_1622: ; CODE XREF: sub_0_15FA+Ej
; sub_0_15FA+13j ...
pop bc
scf
ret
; End of function sub_0_15FA
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_1625: ; CODE XREF: sub_0_1552+1Ep
; sub_0_1552+2Ap ...
sub 30h
ret c
cp 0Ah
ccf
ret
; End of function sub_0_1625
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_162C: ; CODE XREF: sub_0_1492+8p
xor a
ld (de), a
inc de
call sub_0_1632
; End of function sub_0_162C
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_1632: ; CODE XREF: sub_0_14A7+44p
ld b, 0Bh
ld a, 20h
call sub_0_1645
xor a
ld (de), a
inc de
call sub_0_1687
ld a, c
ld (de), a
inc de
ld b, 3
xor a
; End of function sub_0_1632
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_1645: ; CODE XREF: sub_0_1632+4p
; sub_0_1645+2j
ld (de), a
inc de
djnz sub_0_1645
ret
; End of function sub_0_1645
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_164A: ; CODE XREF: sub_0_1552p
push hl
push de
ld de, 2Eh
jp loc_0_1669
; End of function sub_0_164A
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_1652: ; CODE XREF: sub_0_1552+7p
push hl
push de
ld de, 2Ch
jp loc_0_1669
; End of function sub_0_1652
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_165A: ; CODE XREF: sub_0_1552+38p
push hl
push de
ld de, 2Dh
jp loc_0_1669
; End of function sub_0_165A
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_1662: ; CODE XREF: sub_0_15A5p
push de
ld de, 15h
jp loc_0_1676
;----------------------------------------------------------------------------
loc_0_1669: ; CODE XREF: sub_0_164A+5j
; sub_0_1652+5j ...
ld hl, (2D0Fh)
ld a, h
or l
jr z, loc_0_1671
add hl, de
loc_0_1671: ; CODE XREF: sub_0_1662+Cj
ld a, (hl)
pop de
pop hl
or a
ret
;----------------------------------------------------------------------------
loc_0_1676: ; CODE XREF: sub_0_1662+4j
ld hl, (2D0Fh)
add hl, de
ld e, (hl)
inc hl
ld d, (hl)
inc hl
ld a, (hl)
ex de, hl
pop de
or a
ret
; End of function sub_0_1662
;----------------------------------------------------------------------------
.db 22h ; "
.db 0Fh ;
.db 2Dh ; -
.db 0C9h ; É
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_1687: ; CODE XREF: sub_0_14A7+8p
; sub_0_1632+Ap
push af
push de
push hl
ld c, 19h
call sub_0_16AF
push af
ld e, 0FFh
ld c, F_USERNUM
call sub_0_16AF
ld c, a
pop af
ld b, a
pop hl
pop de
pop af
ret
; End of function sub_0_1687
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_169E: ; CODE XREF: sub_0_961+88p
ld a, 11h
call sub_0_16B8
inc a
ret
; End of function sub_0_169E
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_16A5: ; CODE XREF: sub_0_DE7+4p
ld a, 1
jp sub_0_16B8
; End of function sub_0_16A5
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_16AA: ; CODE XREF: sub_0_DE7+1p
ld a, 0Bh
jp sub_0_16B8
; End of function sub_0_16AA
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_16AF: ; CODE XREF: sub_0_1687+5p
; sub_0_1687+Dp
push de
push bc
call bdos
pop bc
pop de
or a
ret
; End of function sub_0_16AF
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_16B8: ; CODE XREF: sub_0_169E+2p
; sub_0_16A5+2j ...
push hl
push de
push bc
ld c, a
call bdos
or a
pop bc
pop de
pop hl
ret
; End of function sub_0_16B8
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_16C4: ; CODE XREF: sub_0_4A4+10p
push bc
push hl
push de
push af
ld b, 8
call sub_0_16DA
ld (hl), 2Eh
inc hl
ld b, 3
call sub_0_16DA
pop af
pop de
pop hl
pop bc
ret
; End of function sub_0_16C4
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_16DA: ; CODE XREF: sub_0_16C4+6p
; sub_0_16C4+Ep ...
ld a, (de)
and 7Fh
cp 20h
jr z, loc_0_16E3
ld (hl), a
inc hl
loc_0_16E3: ; CODE XREF: sub_0_16DA+5j
inc de
djnz sub_0_16DA
ret
; End of function sub_0_16DA
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_16E7: ; CODE XREF: sub_0_482+6p sub_0_4A4+1Fp
push bc
ld b, 0
jp loc_0_16F0
;----------------------------------------------------------------------------
sub_0_16ED:
PUSH BC ; unref. ?
LD B,0FFH
loc_0_16F0: ; CODE XREF: sub_0_16E7+3j
push hl
push af
ld h, 64h
call sub_0_1703
ld h, 0Ah
call sub_0_1703
call sub_0_1717
pop af
pop hl
pop bc
ret
; End of function sub_0_16E7
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_1703: ; CODE XREF: sub_0_16E7+Dp
; sub_0_16E7+12p
ld l, 0FFh
loc_0_1705: ; CODE XREF: sub_0_1703+4j
sub h
inc l
jr nc, loc_0_1705
add a, h
ld h, a
ld a, l
or a
jr nz, sub_0_1717
or b
ld a, h
ret m
ld a, 20h
jr z, loc_0_171A
xor a
; End of function sub_0_1703
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_1717: ; CODE XREF: sub_0_16E7+15p
; sub_0_1703+Aj
add a, 30h
ld b, a
loc_0_171A: ; CODE XREF: sub_0_1703+11j
ld (de), a
inc de
ld a, h
ret
; End of function sub_0_1717
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_171E: ; CODE XREF: sub_0_1492+4p
push af
push hl
loc_0_1720: ; CODE XREF: sub_0_171E+Bj
ld a, (hl)
or a
jr z, loc_0_172B
call sub_0_1793
ld (hl), a
inc hl
jr loc_0_1720
;----------------------------------------------------------------------------
loc_0_172B: ; CODE XREF: sub_0_171E+4j
pop hl
pop af
ret
; End of function sub_0_171E
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_172E: ; CODE XREF: start+2Fp sub_0_961+70p
push bc
push de
push hl
ld c, a
ex de, hl
ld b, (hl)
push hl
inc hl
inc hl
loc_0_1737: ; CODE XREF: sub_0_172E+25j
call sub_0_176B
or a
jr z, loc_0_1760
ld (hl), e
inc hl
ld (hl), d
inc hl
dec b
jr z, loc_0_1755
call sub_0_1779
or a
jr z, loc_0_1760
ld a, c
or a
jr z, loc_0_1751
xor a
ld (de), a
inc de
loc_0_1751: ; CODE XREF: sub_0_172E+1Ej
ld a, b
or a
jr nz, loc_0_1737
loc_0_1755: ; CODE XREF: sub_0_172E+14j
call sub_0_1779
call sub_0_176B
or a
jr z, loc_0_1760
or 0FFh
loc_0_1760: ; CODE XREF: sub_0_172E+Dj
; sub_0_172E+1Aj ...
pop hl
push af
ld a, (hl)
sub b
inc hl
ld (hl), a
pop af
pop hl
pop de
pop bc
ret
; End of function sub_0_172E
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_176B: ; CODE XREF: sub_0_172E+9p
; sub_0_172E+2Ap ...
ld a, (de)
and 7Fh
inc de
cp 20h
jr z, sub_0_176B
cp 9
jr z, sub_0_176B
dec de
ret
; End of function sub_0_176B
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_1779: ; CODE XREF: sub_0_172E+16p
; sub_0_172E+27p ...
ld a, (de)
and 7Fh
ret z
cp 20h
ret z
cp 9
ret z
inc de
jr sub_0_1779
; End of function sub_0_1779
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_1786: ; CODE XREF: start+1Ep sub_0_4A4+Cp
; ...
push hl
call sub_0_178C
pop hl
ret
; End of function sub_0_1786
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_178C: ; CODE XREF: sub_0_1786+1p
push bc
loc_0_178D: ; CODE XREF: sub_0_178C+3j
ld (hl), a
inc hl
djnz loc_0_178D
pop bc
ret
; End of function sub_0_178C
;----------------------------------------------------------------------------
; S u b r o u t i n e
sub_0_1793: ; CODE XREF: sub_0_171E+6p
and 7Fh
cp 61h
ret c
cp 7Bh
ret nc
and 5Fh
ret
; End of function sub_0_1793
;----------------------------------------------------------------------------
word_0_179E: .dw 2D11h ; DATA XREF: start+18r start+35r
; ...
byte_0_17A0: .db 0 ; DATA XREF: sub_0_195+Aw sub_0_195+14r
; ...
byte_0_17A1: .db 0 ; DATA XREF: start+60r sub_0_195+11w
word_0_17A2: .dw 0 ; DATA XREF: start+88w sub_0_961+7Fw
.fill $1800-$,0
.ds 8
nstack: .end ; start