diff --git a/libs/master.lib/keyback[data].asm b/libs/master.lib/keyback[data].asm new file mode 100644 index 00000000..3f3df76c --- /dev/null +++ b/libs/master.lib/keyback[data].asm @@ -0,0 +1,18 @@ +; master library +; +; Description: +; キーの戻し領域 +; +; Global Variables: +; key_back_buffer +; +; Author: +; 恋塚昭彦 +; +; Revision History: +; 94/ 4/ 5 Initial: keyback.asm/master.lib 0.23 +; + + public _key_back_buffer,key_back_buffer +key_back_buffer label word +_key_back_buffer dw 0 diff --git a/libs/master.lib/keystart.asm b/libs/master.lib/keystart.asm new file mode 100644 index 00000000..3937e982 --- /dev/null +++ b/libs/master.lib/keystart.asm @@ -0,0 +1,188 @@ +; master library +; Description: +; 一般的なキー入力サポート +; (NEC DOS拡張ファンクション使用) +; +; Functions: +; void key_start( void ) ; +; void key_end( void ) ; +; +; unsigned key_scan( void ) ; +; unsigned key_wait( void ) ; +; 0〜0ffh: normal keys +; 100h: help key +; 101h〜10ah: F1〜F10 +; 10bh〜114h: SHIFT+F1〜F10 +; 120h〜124h: VF1〜VF5 +; 125h〜129h: SHIFT+VF1〜VF5 +; 12ah〜138h: CTRL+F1〜VF5 +; +; Running Target: +; PC-9801 series (Normal and Hires.) +; +; Revision History: +; 93/ 3/16 Initial +; 93/ 5/11 [M0.16] F・11〜F・15対応 +; 93/ 9/11 [M0.21] CTRL+F・?対応 +; 94/ 6/23 [M0.23] 多重起動防止にフラグ設置 + + doskey_top equ 21 + doskey_end equ 32 + fkey_end equ 38h + + HELPKEY equ 100h + +; +func KEY_START ; { + push SI + + ; CTRL+ファンクションキーをソフトキー化 + mov CL,0fh + mov AX,0 + int 0dch + + test key_started,1 + jne short @@KEY_RESTART + mov key_started,3 + + ; ファンクションキーの内容を保存する + mov CX,0ch + mov AX,00ffh + mov DX,offset key_backup + int 0dch + +@@KEY_RESTART: + ; ファンクションキー定義 + mov keywork,0feh + mov word ptr keywork+1,2020h ; 全部空白 + mov word ptr keywork+3,2020h + mov word ptr keywork+5,7f20h + mov BX,1 +@@FKEY_LOOP: + mov WORD PTR keywork+7,BX + mov CX,0dh + mov AX,BX + mov DX,offset keywork + int 0dch + inc BX + cmp BX,20 + jle short @@FKEY_LOOP + + ; 特殊キー定義 + mov keywork,07fh + mov BX,doskey_top +@@DKEY_LOOP: + mov WORD PTR keywork+1,BX + mov CX,0dh + mov AX,BX + mov DX,offset keywork + int 0dch + inc BX + cmp BX,fkey_end + jle short @@DKEY_LOOP + + pop SI + ret +endfunc ; } + +func KEY_END ; { + test key_started,2 + jnz short @@KEY_END_START ; foolproof + ret +@@KEY_END_START: + and key_started,not 1 + + mov CX,0dh + mov AX,00ffh + mov DX,offset key_backup + int 0dch + + ; CTRL+ファンクションキーのソフトキー化を解除 + mov CL,0fh + mov AX,1 + int 0dch + + ret +endfunc ; } + +func KEY_SCAN ; { + xor AX,AX + xchg AX,key_back_buffer + test AX,AX + jnz short @@SCAN_RET + + mov AH,6 + mov DL,0FFh + int 21h + mov AH,0 + jz short @@SCAN_NOKEY + + cmp AL,07fh + jne short @@SCAN_RET + +key_convert label CALLMODEL + mov AH,7 + int 21h + + mov AH,1 + cmp AL,doskey_top + jb short @@SCAN_RET ; function keys: 101h〜114h + cmp AL,doskey_end + jae short @@SCAN_RET ; shift + function keys: 120h‾129h + + sub AL,doskey_top + mov DX,0 + mov ES,DX + mov AH,DL + mov BX,AX + shl BX,1 + + mov AL,ES:53ah + and AL,19h ; 10h:CTRL 08h:GRPH 01h:SHIFT + jnz short @@L00 + mov AX,key_table_normal[BX] + ret + +@@L00: cmp AL,01h + jne short @@L01 + mov AX,key_table_shift[BX] + ret + +@@L01: cmp AL,08h + jne short @@L02 + mov AX,key_table_alt[BX] + ret + +@@L02: cmp AL,10h + jne short @@L03 + mov AX,key_table_ctrl[BX] + ret + +@@L03: mov AX,HELPKEY ; 無効入力はすべて HELPKEY +@@SCAN_RET: + ret + +@@SCAN_NOKEY: + mov AX,-1 + ret +endfunc ; } + +func KEY_WAIT + xor AX,AX + xchg AX,key_back_buffer + test AX,AX + jnz short @@KEY_READ + + mov AH,7 + int 21h + mov AH,0 + cmp AL,07fh + je short @@KW_CONV + ret +@@KW_CONV: + call key_convert + cmp AX,-1 + je short KEY_WAIT +@@KEY_READ: + ret +endfunc diff --git a/libs/master.lib/keystart[bss].asm b/libs/master.lib/keystart[bss].asm new file mode 100644 index 00000000..0449574e --- /dev/null +++ b/libs/master.lib/keystart[bss].asm @@ -0,0 +1,2 @@ +key_backup db 786 dup (?) +keywork db 10 dup (?) diff --git a/libs/master.lib/keystart[data].asm b/libs/master.lib/keystart[data].asm new file mode 100644 index 00000000..ba5a1160 --- /dev/null +++ b/libs/master.lib/keystart[data].asm @@ -0,0 +1 @@ +key_started dw 0 diff --git a/libs/master.lib/keytable[data].asm b/libs/master.lib/keytable[data].asm new file mode 100644 index 00000000..e0ecd8c4 --- /dev/null +++ b/libs/master.lib/keytable[data].asm @@ -0,0 +1,66 @@ +; master library +; Descriptin: +; 制御キーの初期定義情報 +; +; Revision History: +; 93/ 3/16 Initial +; 93/12/ 9 [M0.22] assignment変更 + + PUBLIC key_table_normal,_key_table_normal + PUBLIC key_table_shift,_key_table_shift + PUBLIC key_table_ctrl,_key_table_ctrl + PUBLIC key_table_alt,_key_table_alt + + HELPKEY equ 100h + +_key_table_normal label word +key_table_normal dw 'C'-'@' ; ROLLUP + dw 'R'-'@' ; ROLLDOWN + dw 'V'-'@' ; INS + dw 'G'-'@' ; DEL + dw 'E'-'@' ; UP + dw 'S'-'@' ; LEFT + dw 'D'-'@' ; RIGHT + dw 'X'-'@' ; DOWN + dw 'Y'-'@' ; HOME/CLR + dw HELPKEY ; HELP + dw 0 ; ----- no means ---- + +_key_table_shift label word +key_table_shift dw 'Z'-'@' ; ROLLUP + dw 'W'-'@' ; ROLLDOWN + dw '@'-'@' ; INS + dw 'T'-'@' ; DEL + dw 'R'-'@' ; UP + dw 'A'-'@' ; LEFT + dw 'F'-'@' ; RIGHT + dw 'C'-'@' ; DOWN + dw 0 ; ----- no means ---- + dw HELPKEY ; HELP + dw '@'-'@' ; SHIFT HOME/CLR + +_key_table_ctrl label word +key_table_ctrl dw 'C'-'@'+200h ; ROLLUP + dw 'R'-'@'+200h ; ROLLDOWN + dw 'V'-'@'+200h ; INS + dw 'G'-'@'+200h ; DEL + dw 'E'-'@'+200h ; UP + dw 'S'-'@'+200h ; LEFT + dw 'D'-'@'+200h ; RIGHT + dw 'X'-'@'+200h ; DOWN + dw HELPKEY ; HOME/CLR + dw HELPKEY ; HELP + dw 0 ; ----- no means ---- + +_key_table_alt label word +key_table_alt dw 'C'-'@'+300h ; ROLLUP + dw 'R'-'@'+300h ; ROLLDOWN + dw 'V'-'@'+300h ; INS + dw 'G'-'@'+300h ; DEL + dw 'E'-'@'+300h ; UP + dw 'S'-'@'+300h ; LEFT + dw 'D'-'@'+300h ; RIGHT + dw 'X'-'@'+300h ; DOWN + dw HELPKEY ; HOME/CLR + dw HELPKEY ; HELP + dw 0 ; ----- no means ---- diff --git a/th01_op.asm b/th01_op.asm index bc9d7e51..20f584bb 100644 --- a/th01_op.asm +++ b/th01_op.asm @@ -1734,179 +1734,7 @@ include libs/master.lib/file_close.asm include libs/master.lib/file_ropen.asm include libs/master.lib/file_seek.asm include libs/master.lib/dos_free.asm - -; =============== S U B R O U T I N E ======================================= - - -sub_1196 proc far - push si - mov cl, 0Fh - mov ax, 0 - int 0DCh ; used by BASIC while in interpreter - test word_12AE6, 1 - jnz short loc_11B7 - mov word_12AE6, 3 - mov cx, 0Ch - mov ax, 0FFh - mov dx, 192Ah - int 0DCh ; used by BASIC while in interpreter - -loc_11B7: - mov byte_13ECC, 0FEh ; '' - mov word_13ECD, 2020h - mov word_13ECF, 2020h - mov word_13ED1, 7F20h - mov bx, 1 - -loc_11D1: - mov word_13ED3, bx - mov cx, 0Dh - mov ax, bx - mov dx, 1C3Ch - int 0DCh ; used by BASIC while in interpreter - inc bx - cmp bx, 14h - jle short loc_11D1 - mov byte_13ECC, 7Fh ; '' - mov bx, 15h - -loc_11ED: - mov word_13ECD, bx - mov cx, 0Dh - mov ax, bx - mov dx, 1C3Ch - int 0DCh ; used by BASIC while in interpreter - inc bx - cmp bx, 38h ; '8' - jle short loc_11ED - pop si - retf -sub_1196 endp - -; --------------------------------------------------------------------------- - nop - -; =============== S U B R O U T I N E ======================================= - - -sub_1204 proc far - test word_12AE6, 2 - jnz short loc_120D - retf -; --------------------------------------------------------------------------- - -loc_120D: - and word_12AE6, 0FFFEh - mov cx, 0Dh - mov ax, 0FFh - mov dx, 192Ah - int 0DCh ; used by BASIC while in interpreter - mov cl, 0Fh - mov ax, 1 - int 0DCh ; used by BASIC while in interpreter - retf -sub_1204 endp - -; --------------------------------------------------------------------------- - nop - xor ax, ax - xchg ax, word_12AE8 - test ax, ax - jnz short locret_1284 - mov ah, 6 - mov dl, 0FFh - int 21h ; DOS - DIRECT CONSOLE I/O CHARACTER OUTPUT - ; DL = character <> FFh - ; Return: ZF set = no character - ; ZF clear = character recieved, AL = character - mov ah, 0 - jz short loc_1285 - cmp al, 7Fh ; '' - jnz short locret_1284 - -; =============== S U B R O U T I N E ======================================= - - -sub_123E proc far - mov ah, 7 - int 21h ; DOS - DIRECT STDIN INPUT, NO ECHO - mov ah, 1 - cmp al, 15h - jb short locret_1284 - cmp al, 20h ; ' ' - jnb short locret_1284 - sub al, 15h - mov dx, 0 - mov es, dx - assume es:seg000 - mov ah, dl - mov bx, ax - shl bx, 1 - mov al, byte ptr es:loc_538+2 - and al, 19h - jnz short loc_1266 - mov ax, [bx+7FEh] - retf -; --------------------------------------------------------------------------- - -loc_1266: - cmp al, 1 - jnz short loc_126F - mov ax, [bx+814h] - retf -; --------------------------------------------------------------------------- - -loc_126F: - cmp al, 8 - jnz short loc_1278 - mov ax, [bx+840h] - retf -; --------------------------------------------------------------------------- - -loc_1278: - cmp al, 10h - jnz short loc_1281 - mov ax, [bx+82Ah] - retf -; --------------------------------------------------------------------------- - -loc_1281: - mov ax, 100h - -locret_1284: - retf -sub_123E endp - -; --------------------------------------------------------------------------- - -loc_1285: - mov ax, 0FFFFh - retf -; --------------------------------------------------------------------------- - nop - -loc_128A: - xor ax, ax - xchg ax, word_12AE8 - test ax, ax - jnz short locret_12A8 - mov ah, 7 - int 21h ; DOS - DIRECT STDIN INPUT, NO ECHO - mov ah, 0 - cmp al, 7Fh ; '' - jz short loc_129F - retf -; --------------------------------------------------------------------------- - -loc_129F: - push cs - call near ptr sub_123E - cmp ax, 0FFFFh - jz short loc_128A - -locret_12A8: - retf -; --------------------------------------------------------------------------- +include libs/master.lib/keystart.asm include libs/master.lib/keybios.asm include libs/master.lib/dos_ropen.asm include libs/master.lib/egc.asm @@ -7917,7 +7745,7 @@ sub_A79D proc far call sub_E3C5 loc_A7AE: - call sub_1204 + call key_end pop bp retf sub_A79D endp @@ -9026,7 +8854,7 @@ loc_B0D6: push 18h ; intno call _int86 add sp, 0Ah - call sub_1196 + call key_start push cs call near ptr sub_A719 xor ax, ax @@ -23894,93 +23722,9 @@ include libs/master.lib/pal[data].asm include libs/master.lib/respal_exist[data].asm include libs/master.lib/resdata[data].asm include libs/master.lib/fil[data].asm - db 3 - db 0 - db 12h - db 0 - db 16h - db 0 - db 7 - db 0 - db 5 - db 0 - db 13h - db 0 - db 4 - db 0 - db 18h - db 0 - db 19h - db 0 - db 0 - db 1 - db 0 - db 0 - db 1Ah - db 0 - db 17h - db 0 - db 0 - db 0 - db 14h - db 0 - db 12h - db 0 - db 1 - db 0 - db 6 - db 0 - db 3 - dd 0 - db 1 - db 0 - db 0 - db 3 - db 2 - db 12h - db 2 - db 16h - db 2 - db 7 - db 2 - db 5 - db 2 - db 13h - db 2 - db 4 - db 2 - db 18h - db 2 - db 0 - db 1 - db 0 - db 1 - db 0 - db 0 - db 3 - db 3 - db 12h - db 3 - db 16h - db 3 - db 7 - db 3 - db 5 - db 3 - db 13h - db 3 - db 4 - db 3 - db 18h - db 3 - db 0 - db 1 - db 0 - db 1 - db 0 - db 0 -word_12AE6 dw 0 -word_12AE8 dw 0 +include libs/master.lib/keytable[data].asm +include libs/master.lib/keystart[data].asm +include libs/master.lib/keyback[data].asm include libs/master.lib/dos_ropen[data].asm include libs/master.lib/clip[data].asm include libs/master.lib/rand[data].asm @@ -24972,216 +24716,11 @@ unk_136D2 db ? ; font dd ? include libs/master.lib/pal[bss].asm include libs/master.lib/fil[bss].asm +include libs/master.lib/keystart[bss].asm dd ? dd ? dd ? dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - db ? ; - db ? ; -byte_13ECC db ? - ; sub_1196+4Fw -word_13ECD dw ? - ; sub_1196:loc_11EDw -word_13ECF dw ? -word_13ED1 dw ? -word_13ED3 dw ? - dd ? - dd ? - dd ? - dd ? - db ? ; dword_13EE6 dd ? dword_13EEA dd ? ; seg012:loc_E5B4r ... diff --git a/th01_reiiden.asm b/th01_reiiden.asm index b3508edf..e9fde60f 100644 --- a/th01_reiiden.asm +++ b/th01_reiiden.asm @@ -1859,185 +1859,7 @@ include libs/master.lib/file_create.asm include libs/master.lib/file_seek.asm include libs/master.lib/dos_free.asm include libs/master.lib/dos_axdx.asm - -; =============== S U B R O U T I N E ======================================= - - -sub_12FA proc far - push si - mov cl, 0Fh - mov ax, 0 - int 0DCh ; used by BASIC while in interpreter - test word_35204, 1 - jnz short loc_131B - mov word_35204, 3 - mov cx, 0Ch - mov ax, 0FFh - mov dx, 44D0h - int 0DCh ; used by BASIC while in interpreter - -loc_131B: - mov byte_39182, 0FEh ; '' - mov word_39183, 2020h - mov word_39185, 2020h - mov word_39187, 7F20h - mov bx, 1 - -loc_1335: - mov word_39189, bx - mov cx, 0Dh - mov ax, bx - mov dx, 47E2h - int 0DCh ; used by BASIC while in interpreter - inc bx - cmp bx, 14h - jle short loc_1335 - mov byte_39182, 7Fh ; '' - mov bx, 15h - -loc_1351: - mov word_39183, bx - mov cx, 0Dh - mov ax, bx - mov dx, 47E2h - int 0DCh ; used by BASIC while in interpreter - inc bx - cmp bx, 38h ; '8' - jle short loc_1351 - pop si - retf -sub_12FA endp - -; --------------------------------------------------------------------------- - nop - -; =============== S U B R O U T I N E ======================================= - - -sub_1368 proc far - test word_35204, 2 - jnz short loc_1371 - retf -; --------------------------------------------------------------------------- - -loc_1371: - and word_35204, 0FFFEh - mov cx, 0Dh - mov ax, 0FFh - mov dx, 44D0h - int 0DCh ; used by BASIC while in interpreter - mov cl, 0Fh - mov ax, 1 - int 0DCh ; used by BASIC while in interpreter - retf -sub_1368 endp - -; --------------------------------------------------------------------------- - nop - -; =============== S U B R O U T I N E ======================================= - - -sub_138A proc far - xor ax, ax - xchg ax, word_35206 - test ax, ax - jnz short locret_13E8 - mov ah, 6 - mov dl, 0FFh - int 21h ; DOS - DIRECT CONSOLE I/O CHARACTER OUTPUT - ; DL = character <> FFh - ; Return: ZF set = no character - ; ZF clear = character recieved, AL = character - mov ah, 0 - jz short loc_13E9 - cmp al, 7Fh ; '' - jnz short locret_13E8 - -loc_13A2: - mov ah, 7 - int 21h ; DOS - DIRECT STDIN INPUT, NO ECHO - mov ah, 1 - cmp al, 15h - jb short locret_13E8 - cmp al, 20h ; ' ' - jnb short locret_13E8 - sub al, 15h - mov dx, 0 - mov es, dx - assume es:seg000 - mov ah, dl - mov bx, ax - shl bx, 1 - mov al, byte ptr es:loc_538+2 - and al, 19h - jnz short loc_13CA - mov ax, [bx+80Ch] - retf -; --------------------------------------------------------------------------- - -loc_13CA: - cmp al, 1 - jnz short loc_13D3 - mov ax, [bx+822h] - retf -; --------------------------------------------------------------------------- - -loc_13D3: - cmp al, 8 - jnz short loc_13DC - mov ax, [bx+84Eh] - retf -; --------------------------------------------------------------------------- - -loc_13DC: - cmp al, 10h - jnz short loc_13E5 - mov ax, [bx+838h] - retf -; --------------------------------------------------------------------------- - -loc_13E5: - mov ax, 100h - -locret_13E8: - retf -; --------------------------------------------------------------------------- - -loc_13E9: - mov ax, 0FFFFh - retf -sub_138A endp - -; --------------------------------------------------------------------------- - nop - -; =============== S U B R O U T I N E ======================================= - - -sub_13EE proc far - xor ax, ax - xchg ax, word_35206 - test ax, ax - jnz short locret_140C - mov ah, 7 - int 21h ; DOS - DIRECT STDIN INPUT, NO ECHO - mov ah, 0 - cmp al, 7Fh ; '' - jz short loc_1403 - retf -; --------------------------------------------------------------------------- - -loc_1403: - push cs - call loc_13A2 - cmp ax, 0FFFFh - jz short near ptr sub_13EE - -locret_140C: - retf -sub_13EE endp - +include libs/master.lib/keystart.asm include libs/master.lib/key_sense.asm include libs/master.lib/dos_ropen.asm include libs/master.lib/grcg_setcolor.asm @@ -14567,7 +14389,7 @@ loc_D583: mov eax, dword_36C16 mov random_seed, eax call sub_E7E4 - call sub_12FA + call key_start push large 3F003Fh call sub_198C add sp, 4 @@ -15836,7 +15658,7 @@ loc_E2CB: push cs call near ptr sub_D4DD call sub_E852 - call sub_1368 + call key_end call sub_1716F push large 0 push ds @@ -42973,93 +42795,9 @@ include libs/master.lib/pal[data].asm include libs/master.lib/respal_exist[data].asm include libs/master.lib/resdata[data].asm include libs/master.lib/fil[data].asm - db 3 - db 0 - db 12h - db 0 - db 16h - db 0 - db 7 - db 0 - db 5 - db 0 - db 13h - db 0 - db 4 - db 0 - db 18h - db 0 - db 19h - db 0 - db 0 - db 1 - db 0 - db 0 - db 1Ah - db 0 - db 17h - db 0 - db 0 - db 0 - db 14h - db 0 - db 12h - db 0 - db 1 - db 0 - db 6 - db 0 - db 3 - dd 0 - db 1 - db 0 - db 0 - db 3 - db 2 - db 12h - db 2 - db 16h - db 2 - db 7 - db 2 - db 5 - db 2 - db 13h - db 2 - db 4 - db 2 - db 18h - db 2 - db 0 - db 1 - db 0 - db 1 - db 0 - db 0 - db 3 - db 3 - db 12h - db 3 - db 16h - db 3 - db 7 - db 3 - db 5 - db 3 - db 13h - db 3 - db 4 - db 3 - db 18h - db 3 - db 0 - db 1 - db 0 - db 1 - db 0 - db 0 -word_35204 dw 0 -word_35206 dw 0 +include libs/master.lib/keytable[data].asm +include libs/master.lib/keystart[data].asm +include libs/master.lib/keyback[data].asm include libs/master.lib/dos_ropen[data].asm include libs/master.lib/clip[data].asm include libs/master.lib/sin8[data].asm @@ -47230,214 +46968,11 @@ unk_38988 db ? ; off_38E28 dd ? include libs/master.lib/pal[bss].asm include libs/master.lib/fil[bss].asm +include libs/master.lib/keystart[bss].asm dd ? dd ? dd ? dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - dd ? - db ? ; - db ? ; -byte_39182 db ? -word_39183 dw ? -word_39185 dw ? -word_39187 dw ? -word_39189 dw ? - dd ? - dd ? - dd ? - dd ? - db ? ; dword_3919C dd ? unk_391A0 db ? ; dd ?