mirror of https://github.com/nmlgc/ReC98.git
[Reverse-engineering] [th02/th04/th05] Stage background tile ring buffer
Funded by -Tom-.
This commit is contained in:
parent
8ee87233b8
commit
e1e4f819ed
|
@ -71,3 +71,8 @@ PLAYFIELD_VRAM_X = PLAYFIELD_X / 8
|
|||
PLAYFIELD_VRAM_W = PLAYFIELD_W / 8
|
||||
|
||||
ROW_SIZE = (RES_X / 8)
|
||||
|
||||
TILE_W = 16
|
||||
TILE_H = 16
|
||||
TILES_Y = 1 + (PLAYFIELD_H / TILE_H) + 1
|
||||
TILES_X = (PLAYFIELD_W / TILE_W)
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
TILE_COUNT = TILES_X * TILES_Y
|
||||
|
||||
public _tile_ring
|
||||
_tile_ring db TILE_COUNT dup(?)
|
181
th02_main.asm
181
th02_main.asm
|
@ -1244,7 +1244,7 @@ loc_44BF:
|
|||
mov al, map[bx]
|
||||
mov [si+4DF6h], al
|
||||
mov bx, [bp+var_2]
|
||||
mov [bx+si+4E0Fh], al
|
||||
mov _tile_ring[bx+si], al
|
||||
inc si
|
||||
inc cx
|
||||
|
||||
|
@ -1410,12 +1410,12 @@ loc_45CB:
|
|||
mov al, map[bx+si]
|
||||
mov bx, 17h
|
||||
sub bx, di
|
||||
imul bx, 18h
|
||||
mov [bx+si+4E0Fh], al
|
||||
imul bx, TILES_X
|
||||
mov _tile_ring[bx+si], al
|
||||
inc si
|
||||
|
||||
loc_45ED:
|
||||
cmp si, 18h
|
||||
cmp si, TILES_X
|
||||
jl short loc_45CB
|
||||
inc di
|
||||
|
||||
|
@ -1569,8 +1569,8 @@ loc_46C6:
|
|||
loc_46D9:
|
||||
push [bp+var_2]
|
||||
mov bx, si
|
||||
imul bx, 18h
|
||||
mov al, [bx+di+4E0Fh]
|
||||
imul bx, TILES_X
|
||||
mov al, _tile_ring[bx+di]
|
||||
mov ah, 0
|
||||
push ax
|
||||
call sub_4419
|
||||
|
@ -1706,8 +1706,8 @@ loc_47B2:
|
|||
|
||||
loc_47B9:
|
||||
mov bx, [bp+var_2]
|
||||
imul bx, 18h
|
||||
mov al, [bx+si+4E0Fh]
|
||||
imul bx, TILES_X
|
||||
mov al, _tile_ring[bx+si]
|
||||
mov ah, 0
|
||||
mov [bp+var_4], ax
|
||||
push di
|
||||
|
@ -1717,7 +1717,7 @@ loc_47B9:
|
|||
add di, 2
|
||||
|
||||
loc_47D1:
|
||||
cmp si, 18h
|
||||
cmp si, TILES_X
|
||||
jl short loc_47B9
|
||||
inc [bp+var_2]
|
||||
add [bp+var_6], 500h
|
||||
|
@ -1757,7 +1757,7 @@ sub_480C proc far
|
|||
var_6 = word ptr -6
|
||||
var_4 = word ptr -4
|
||||
var_2 = word ptr -2
|
||||
arg_0 = word ptr 6
|
||||
@@tile = word ptr 6
|
||||
arg_2 = word ptr 8
|
||||
arg_4 = word ptr 0Ah
|
||||
|
||||
|
@ -1779,10 +1779,10 @@ arg_4 = word ptr 0Ah
|
|||
mov word_22862, 0
|
||||
mov word_22864, 10h
|
||||
mov bx, [bp+var_2]
|
||||
imul bx, 18h
|
||||
imul bx, TILES_X
|
||||
add bx, [bp+var_4]
|
||||
mov al, byte ptr [bp+arg_0]
|
||||
mov [bx+4E0Fh], al
|
||||
mov al, byte ptr [bp+@@tile]
|
||||
mov _tile_ring[bx], al
|
||||
call sub_43B0
|
||||
mov dx, 0A6h ; '¦'
|
||||
mov al, byte_20619
|
||||
|
@ -1799,13 +1799,13 @@ arg_4 = word ptr 0Ah
|
|||
add ax, dx
|
||||
mov [bp+var_6], ax
|
||||
push ax
|
||||
push [bp+arg_0]
|
||||
push [bp+@@tile]
|
||||
call sub_43E0
|
||||
mov dx, 0A6h ; '¦'
|
||||
mov al, byte_20618
|
||||
out dx, al
|
||||
push [bp+var_6]
|
||||
push [bp+arg_0]
|
||||
push [bp+@@tile]
|
||||
call sub_43E0
|
||||
nopcall egc_off
|
||||
pop di
|
||||
|
@ -38522,156 +38522,7 @@ word_22864 dw ?
|
|||
dd ? ;
|
||||
dd ? ;
|
||||
byte_2287E db ?
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
include th02/tiles[bss].asm
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
|
|
|
@ -1,5 +1,14 @@
|
|||
; Each tile defines a 384×80 section of the background, which internally are
|
||||
; further divided into 5 rows of 16 pixels each.
|
||||
|
||||
; No idea why ZUN just didn't go with the actually visible space of 384
|
||||
; horizontal tiles. That's 8 wasted tiles per row that the game doesn't do
|
||||
; anything with?
|
||||
TILES_MEMORY_X = 512 / TILE_W
|
||||
|
||||
public _tile_ring
|
||||
_tile_ring dw (TILES_MEMORY_X * TILES_Y) dup(?)
|
||||
|
||||
if GAME eq 5
|
||||
public _tile_index_ptr
|
||||
_tile_index_ptr dw ?
|
462
th04_main.asm
462
th04_main.asm
|
@ -1418,7 +1418,7 @@ arg_4 = word ptr 0Ah
|
|||
pop bx
|
||||
add bx, ax
|
||||
mov ax, [bp+arg_0]
|
||||
mov [bx+4D40h], ax
|
||||
mov _tile_ring[bx], ax
|
||||
mov al, [bp+var_1]
|
||||
mov byte_255BC, al
|
||||
pop di
|
||||
|
@ -1537,7 +1537,7 @@ loc_B896:
|
|||
|
||||
loc_B89D:
|
||||
shl ax, 6
|
||||
add ax, 4D40h
|
||||
add ax, offset _tile_ring
|
||||
mov di, ax
|
||||
xor ax, ax
|
||||
mov al, _tile_row
|
||||
|
@ -1555,7 +1555,7 @@ loc_B89D:
|
|||
push ds
|
||||
mov ax, map_seg
|
||||
mov ds, ax
|
||||
mov cx, 18h
|
||||
mov cx, TILES_X
|
||||
rep movsw
|
||||
pop ds
|
||||
|
||||
|
@ -1822,8 +1822,8 @@ sub_BAA2 proc near
|
|||
push si
|
||||
push ds
|
||||
xor bx, bx
|
||||
mov di, 4D40h
|
||||
add di, 600h
|
||||
mov di, offset _tile_ring
|
||||
add di, TILES_MEMORY_X * (TILES_Y - 1) * 2
|
||||
xor dx, dx
|
||||
mov ax, ds
|
||||
mov es, ax
|
||||
|
@ -1843,10 +1843,10 @@ loc_BAC0:
|
|||
mov ah, 5
|
||||
|
||||
loc_BAD4:
|
||||
mov cx, 0Ch
|
||||
mov cx, TILES_X / 2
|
||||
rep movsd
|
||||
sub di, 70h ; 'p'
|
||||
sub si, 70h ; 'p'
|
||||
sub di, (TILES_MEMORY_X + TILES_X) * 2
|
||||
sub si, (TILES_MEMORY_X + TILES_X) * 2
|
||||
dec ah
|
||||
jnz short loc_BAD4
|
||||
inc bx
|
||||
|
@ -1883,7 +1883,7 @@ sub_BAEE proc near
|
|||
shr ax, 4
|
||||
shl ax, 6
|
||||
mov bx, ax
|
||||
mov si, [bx+4D40h]
|
||||
mov si, _tile_ring[bx]
|
||||
mov bx, dx
|
||||
and bx, 0Fh
|
||||
mov cx, bx
|
||||
|
@ -1909,7 +1909,7 @@ loc_BB49:
|
|||
xor dh, dh
|
||||
|
||||
loc_BB4B:
|
||||
mov dl, 18h
|
||||
mov dl, TILES_X
|
||||
mov word_25109, cx
|
||||
|
||||
loc_BB51:
|
||||
|
@ -1921,8 +1921,8 @@ loc_BB51:
|
|||
loc_BB60:
|
||||
mov bp, es:[si]
|
||||
mov es:[di], bp
|
||||
add si, 50h ; 'P'
|
||||
add di, 50h ; 'P'
|
||||
add si, ROW_SIZE
|
||||
add di, ROW_SIZE
|
||||
loop loc_BB60
|
||||
or bl, bl
|
||||
jz short loc_BB8F
|
||||
|
@ -1935,7 +1935,7 @@ loc_BB60:
|
|||
sub bx, 640h
|
||||
|
||||
loc_BB87:
|
||||
mov si, [bx+4D40h]
|
||||
mov si, _tile_ring[bx]
|
||||
xor bx, bx
|
||||
jmp short loc_BB60
|
||||
; ---------------------------------------------------------------------------
|
||||
|
@ -1944,7 +1944,7 @@ loc_BB8F:
|
|||
mov cx, word_25109
|
||||
add ax, 2
|
||||
mov bx, ax
|
||||
mov si, [bx+4D40h]
|
||||
mov si, _tile_ring[bx]
|
||||
dec dl
|
||||
jnz short loc_BB51
|
||||
pop di
|
||||
|
@ -1966,17 +1966,17 @@ sub_BBA4 proc near
|
|||
mov bx, 4D20h
|
||||
mov di, 7A84h
|
||||
mov dh, 32h ; '2'
|
||||
mov si, 600h
|
||||
mov si, TILES_MEMORY_X * (TILES_Y - 1) * 2
|
||||
|
||||
loc_BBB9:
|
||||
mov dl, 18h
|
||||
mov dl, TILES_X
|
||||
|
||||
loc_BBBB:
|
||||
cmp byte ptr [bx], 0
|
||||
jz short loc_BBE7
|
||||
push si
|
||||
mov byte ptr [bx], 0
|
||||
mov si, [si+4D40h]
|
||||
mov si, _tile_ring[si]
|
||||
test dh, 1
|
||||
jnz short loc_BBD1
|
||||
add si, 280h
|
||||
|
@ -4195,13 +4195,13 @@ sub_CBB8 proc near
|
|||
push di
|
||||
call sub_CBFA
|
||||
mov di, 7804h
|
||||
mov bx, 5340h
|
||||
mov bx, offset _tile_ring[TILES_MEMORY_X * (TILES_Y - 1) * 2]
|
||||
mov ax, GRAM_400
|
||||
mov es, ax
|
||||
assume es:nothing
|
||||
|
||||
loc_CBC8:
|
||||
mov dl, 18h
|
||||
mov dl, TILES_X
|
||||
|
||||
loc_CBCA:
|
||||
mov si, [bx]
|
||||
|
@ -4211,14 +4211,14 @@ loc_CBCA:
|
|||
loc_CBD0:
|
||||
mov ax, es:[si]
|
||||
mov es:[di], ax
|
||||
add si, 50h ; 'P'
|
||||
add di, 50h ; 'P'
|
||||
add si, ROW_SIZE
|
||||
add di, ROW_SIZE
|
||||
loop loc_CBD0
|
||||
sub di, 4FEh
|
||||
add bx, 2
|
||||
dec dl
|
||||
jnz short loc_CBCA
|
||||
sub bx, 70h ; 'p'
|
||||
sub bx, (TILES_MEMORY_X + TILES_X) * 2
|
||||
sub di, 530h
|
||||
jge short loc_CBC8
|
||||
call egc_off
|
||||
|
@ -8246,9 +8246,9 @@ loc_EAB0:
|
|||
mov ax, [bx]
|
||||
|
||||
loc_EABB:
|
||||
mov [di+4D40h], ax
|
||||
add di, 40h
|
||||
cmp di, 640h
|
||||
mov _tile_ring[di], ax
|
||||
add di, (TILES_MEMORY_X * 2)
|
||||
cmp di, (TILES_MEMORY_X * 2) * TILES_Y
|
||||
jb short loc_EABB
|
||||
mov di, dx
|
||||
|
||||
|
@ -8295,7 +8295,7 @@ var_2 = word ptr -2
|
|||
|
||||
loc_EB0F:
|
||||
mov bx, word_22D9C
|
||||
imul bx, 18h
|
||||
imul bx, TILES_X
|
||||
cmp byte ptr [bx+di+199Ch], 2
|
||||
jnz short loc_EB41
|
||||
mov al, byte_25668 ; jump table for switch statement
|
||||
|
@ -8311,13 +8311,13 @@ loc_EB0F:
|
|||
mov dx, di
|
||||
add dx, dx
|
||||
add bx, dx
|
||||
mov [bx+4D40h], ax
|
||||
mov _tile_ring[bx], ax
|
||||
|
||||
loc_EB41:
|
||||
inc di
|
||||
|
||||
loc_EB42:
|
||||
cmp di, 18h
|
||||
cmp di, TILES_X
|
||||
jl short loc_EB0F
|
||||
cmp frame, 1
|
||||
ja short loc_EB8A
|
||||
|
@ -8339,11 +8339,11 @@ loc_EB59:
|
|||
mov si, di
|
||||
add si, si
|
||||
mov ax, [si+190Ch]
|
||||
mov [bx+4D40h], ax
|
||||
mov _tile_ring[bx], ax
|
||||
inc di
|
||||
|
||||
loc_EB72:
|
||||
cmp di, 18h
|
||||
cmp di, TILES_X
|
||||
jl short loc_EB59
|
||||
inc [bp+var_2]
|
||||
|
||||
|
@ -46185,407 +46185,7 @@ map_seg dw ?
|
|||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
include th04/formats/tiles[bss].asm
|
||||
include th04/tiles[bss].asm
|
||||
dword_266C6 dd ?
|
||||
frame dw ?
|
||||
include th03/frame_mod[bss].asm
|
||||
|
|
444
th05_main.asm
444
th05_main.asm
|
@ -1798,8 +1798,8 @@ sub_BB9A proc near
|
|||
push ds
|
||||
mov bx, _tile_index_ptr
|
||||
sub bx, 4
|
||||
mov di, 4FB6h
|
||||
add di, 600h
|
||||
mov di, offset _tile_ring
|
||||
add di, TILES_MEMORY_X * (TILES_Y - 1) * 2
|
||||
xor dx, dx
|
||||
mov ax, ds
|
||||
mov es, ax
|
||||
|
@ -1819,10 +1819,10 @@ loc_BBBD:
|
|||
mov ah, 5
|
||||
|
||||
loc_BBCF:
|
||||
mov cx, 0Ch
|
||||
mov cx, TILES_X / 2
|
||||
rep movsd
|
||||
sub di, 70h ; 'p'
|
||||
sub si, 70h ; 'p'
|
||||
sub di, (TILES_MEMORY_X + TILES_X) * 2
|
||||
sub si, (TILES_MEMORY_X + TILES_X) * 2
|
||||
dec ah
|
||||
jnz short loc_BBCF
|
||||
inc bx
|
||||
|
@ -1843,13 +1843,13 @@ sub_BBE8 proc near
|
|||
push di
|
||||
call sub_BC2A
|
||||
mov di, 7804h
|
||||
mov bx, 55B6h
|
||||
mov bx, offset _tile_ring[TILES_MEMORY_X * (TILES_Y - 1) * 2]
|
||||
mov ax, GRAM_400
|
||||
mov es, ax
|
||||
assume es:nothing
|
||||
|
||||
loc_BBF8:
|
||||
mov dl, 18h
|
||||
mov dl, TILES_X
|
||||
|
||||
loc_BBFA:
|
||||
mov si, [bx]
|
||||
|
@ -1866,7 +1866,7 @@ loc_BC00:
|
|||
add bx, 2
|
||||
dec dl
|
||||
jnz short loc_BBFA
|
||||
sub bx, 70h ; 'p'
|
||||
sub bx, (TILES_MEMORY_X + TILES_X) * 2
|
||||
sub di, 530h
|
||||
jge short loc_BBF8
|
||||
call egc_off
|
||||
|
@ -1919,7 +1919,7 @@ sub_BC6A proc near
|
|||
shr ax, 4
|
||||
shl ax, 6
|
||||
mov bx, ax
|
||||
mov si, [bx+4FB6h]
|
||||
mov si, _tile_ring[bx]
|
||||
mov bx, dx
|
||||
and bx, 0Fh
|
||||
mov cx, bx
|
||||
|
@ -1945,7 +1945,7 @@ loc_BCC5:
|
|||
xor dh, dh
|
||||
|
||||
loc_BCC7:
|
||||
mov dl, 18h
|
||||
mov dl, TILES_X
|
||||
mov word_23F01, cx
|
||||
|
||||
loc_BCCD:
|
||||
|
@ -1971,7 +1971,7 @@ loc_BCDC:
|
|||
sub bx, 640h
|
||||
|
||||
loc_BD03:
|
||||
mov si, [bx+4FB6h]
|
||||
mov si, _tile_ring[bx]
|
||||
xor bx, bx
|
||||
jmp short loc_BCDC
|
||||
; ---------------------------------------------------------------------------
|
||||
|
@ -1980,7 +1980,7 @@ loc_BD0B:
|
|||
mov cx, word_23F01
|
||||
add ax, 2
|
||||
mov bx, ax
|
||||
mov si, [bx+4FB6h]
|
||||
mov si, _tile_ring[bx]
|
||||
dec dl
|
||||
jnz short loc_BCCD
|
||||
pop di
|
||||
|
@ -2037,7 +2037,7 @@ loc_BD81:
|
|||
|
||||
loc_BD88:
|
||||
shl ax, 6
|
||||
add ax, 4FB6h
|
||||
add ax, offset _tile_ring
|
||||
mov di, ax
|
||||
xor ax, ax
|
||||
mov al, _tile_row
|
||||
|
@ -2054,7 +2054,7 @@ loc_BD88:
|
|||
push ds
|
||||
mov ax, map_seg
|
||||
mov ds, ax
|
||||
mov cx, 18h
|
||||
mov cx, TILES_X
|
||||
rep movsw
|
||||
pop ds
|
||||
|
||||
|
@ -2206,17 +2206,17 @@ sub_BF46 proc near
|
|||
mov bx, 4F96h
|
||||
mov di, 7A84h
|
||||
mov dh, 32h ; '2'
|
||||
mov si, 600h
|
||||
mov si, TILES_MEMORY_X * (TILES_Y - 1) * 2
|
||||
|
||||
loc_BF5B:
|
||||
mov dl, 18h
|
||||
mov dl, TILES_X
|
||||
|
||||
loc_BF5D:
|
||||
cmp byte ptr [bx], 0
|
||||
jz short loc_BF89
|
||||
push si
|
||||
mov byte ptr [bx], 0
|
||||
mov si, [si+4FB6h]
|
||||
mov si, _tile_ring[si]
|
||||
test dh, 1
|
||||
jnz short loc_BF73
|
||||
add si, 280h
|
||||
|
@ -2991,7 +2991,7 @@ numerals_draw endp
|
|||
pop bx
|
||||
add bx, ax
|
||||
mov ax, [bp+6]
|
||||
mov [bx+4FB6h], ax
|
||||
mov _tile_ring[bx], ax
|
||||
mov al, [bp-1]
|
||||
mov byte_2CE00, al
|
||||
pop di
|
||||
|
@ -12735,13 +12735,13 @@ loc_11441:
|
|||
mov ax, di
|
||||
add ax, ax
|
||||
add bx, ax
|
||||
mov word ptr [bx+4FB6h], 5048h
|
||||
mov _tile_ring[bx], 5048h
|
||||
mov bx, [bp+var_2]
|
||||
shl bx, 6
|
||||
mov ax, [bp+var_4]
|
||||
add ax, ax
|
||||
add bx, ax
|
||||
mov word ptr [bx+4FB6h], 5048h
|
||||
mov _tile_ring[bx], 5048h
|
||||
inc [bp+var_2]
|
||||
|
||||
loc_11469:
|
||||
|
@ -12773,7 +12773,7 @@ loc_11491:
|
|||
mov ax, di
|
||||
add ax, ax
|
||||
add bx, ax
|
||||
mov word ptr [bx+4FB6h], 48h ; 'H'
|
||||
mov _tile_ring[bx], 48h
|
||||
inc [bp+var_2]
|
||||
|
||||
loc_114A6:
|
||||
|
@ -44347,407 +44347,7 @@ map_seg dw ?
|
|||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
dd ? ;
|
||||
include th04/formats/tiles[bss].asm
|
||||
include th04/tiles[bss].asm
|
||||
dword_25FDC dd ?
|
||||
frame dw ?
|
||||
include th03/frame_mod[bss].asm
|
||||
|
|
Loading…
Reference in New Issue