IDEAL\r
- MODEL large\r
- P386\r
+ MODEL huge\r
+ 8087\r
\r
EXTRN C l1:word, C l2:word, C l3:word, C l4:word, C k1:word, C k2:word, C k3:word, C k4:word\r
EXTRN C il1:word, C il2:word, C il3:word, C il4:word, C ik1:word, C ik2:word, C ik3:word, C ik4:word\r
PUBLIC C frame_count, C init_copper, C close_copper, C cop_drop, C cop_pal, C do_pal\r
PUBLIC C cop_scrl, C cop_start, C cop_plz\r
\r
-frame_count dw 0\r
+frame_count dw 0\r
cop_drop dw 0\r
cop_pal dd 0\r
do_pal dw 0\r
\r
PROC copper2\r
\r
- pusha\r
+ ;pusha\r
+ push AX\r
+ push CX\r
+ push DX\r
+ push BX\r
+ push SP\r
+ push BP\r
+ push SI\r
+ push DI\r
+\r
push ds\r
\r
inc [cs:frame_count]\r
mov al, 0d\r
out dx, al\r
inc dx\r
- rep outsb\r
+ ;rep outsb\r
+ movsb\r
+ movsb\r
mov [cs:do_pal], 0d\r
@@no_pal:\r
cmp [cs:cop_plz], 0d\r
call do_drop\r
@@l1:\r
pop ds\r
- popa\r
+ ;popa\r
+ pop AX\r
+ pop CX\r
+ pop DX\r
+ pop BX\r
+ pop SP\r
+ pop BP\r
+ pop SI\r
+ pop DI\r
+\r
retf\r
ENDP\r
\r
retf\r
ENDP\r
\r
-pompi db 0\r
+pompi db 0\r
\r
PUBLIC C pompota\r
\r
mov ax, 0f07h\r
out dx, ax ; 8th bit\r
mov ax, 3c18h\r
- inc [cs:pompi]\r
+ inc [cs:pompi]\r
test [cs:pompi], 1d\r
- jz @@l1\r
+ jz @@l1\r
mov [cs:cop_scrl], 0d\r
mov ax, 3d18h\r
@@l1:\r
\r
PROC moveplz\r
\r
- push ds\r
- push SEG k1\r
- pop ds\r
-\r
- add [ds:k1], -3d\r
- and [ds:k1], 4095d\r
- add [ds:k2], -2d\r
- and [ds:k2], 4095d\r
- add [ds:k3], 1d\r
- and [ds:k3], 4095d\r
- add [ds:k4], 2d\r
- and [ds:k4], 4095d\r
-\r
- add [ds:l1], -1d\r
- and [ds:l1], 4095d\r
- add [ds:l2], -2d\r
- and [ds:l2], 4095d\r
- add [ds:l3], 2d\r
- and [ds:l3], 4095d\r
- add [ds:l4], 3d\r
- and [ds:l4], 4095d\r
-\r
- pop ds\r
+ push ds\r
+ ;;;;push SEG k1\r
+ pop ds\r
+\r
+ add [ds:k1], -3d\r
+ and [ds:k1], 4095d\r
+ add [ds:k2], -2d\r
+ and [ds:k2], 4095d\r
+ add [ds:k3], 1d\r
+ and [ds:k3], 4095d\r
+ add [ds:k4], 2d\r
+ and [ds:k4], 4095d\r
+\r
+ add [ds:l1], -1d\r
+ and [ds:l1], 4095d\r
+ add [ds:l2], -2d\r
+ and [ds:l2], 4095d\r
+ add [ds:l3], 2d\r
+ and [ds:l3], 4095d\r
+ add [ds:l4], 3d\r
+ and [ds:l4], 4095d\r
+\r
+ pop ds\r
ret\r
ENDP\r
\r
LABEL dtau Word\r
ccc=0\r
cccc=0\r
-REPT 65 ; 43=dy*512/dtý\r
+REPT 65 ; 43=dy*512/dt\r
dw ccc*ccc/4*43/128+60\r
ccc=ccc+1\r
ENDM\r
out dx, ax\r
mov al, 07h\r
mov ah, bh\r
- shl ah, 4d\r
+ shl ah, 1d\r
+ shl ah, 1d\r
+ shl ah, 1d\r
+ shl ah, 1d\r
and ah, 10h\r
or ah, 0fh\r
out dx, ax ; 8th bit\r
\r
@@over:\r
cmp [cs:cop_drop], 256d\r
- jae @@end\r
+ jae end_\r
cmp [cs:cop_drop], 128\r
jae @@lll\r
cmp [cs:cop_drop], 64+32d\r
- ja @@end\r
+ ja end_\r
\r
@@lll: mov [Word cs:cop_pal], OFFSET fadepal\r
mov [Word cs:cop_pal+2], SEG fadepal\r
mov [do_pal], 1d\r
\r
cmp [cs:cop_drop], 65\r
- je @@l5\r
+ je l5\r
\r
mov dx, 3d4h\r
mov ax, 3c18h\r
mov ax, 0f07h\r
out dx, ax ; 8th bit\r
\r
- push ds si di cx\r
+ push ds\r
+ push si\r
+ push di\r
+ push cx\r
\r
lds si, [cs:cop_fadepal]\r
mov di, OFFSET fadepal\r
dec cx\r
jnz @@l4\r
\r
- pop cx di si ds\r
+ pop cx\r
+ pop di\r
+ pop si\r
+ pop ds\r
ret\r
-@@l5:\r
+l5:\r
mov dx, 3d4h\r
mov ax, 9018h\r
out dx, ax\r
\r
call initpparas\r
ret\r
-@@end:\r
+end_:\r
mov [cs:cop_drop], 0d\r
ret\r
ENDP\r
PROC initpparas\r
push ax\r
push ds\r
- push SEG k1\r
- pop ds\r
+ ;;;;push SEG k1\r
+ pop ds\r
\r
mov ax, [ds:il1]\r
mov [ds:l1], ax\r
+++ /dev/null
-copper.asm(236): Error! E065: Operator is expected
-copper.asm(254): Error! E065: Operator is expected
-copper.asm(256): Error! E043: Jump out of range
-copper.asm(265): Error! E043: Jump out of range
Open Watcom Linker Version 2.0 beta Jan 16 2016 17:32:38 (64-bit)
Copyright (c) 2002-2015 The Open Watcom Contributors. All Rights Reserved.
Portions Copyright (c) 1985-2002 Sybase, Inc. All Rights Reserved.
-Created on: 16/02/15 14:01:39
+Created on: 16/02/15 15:13:07
Executable Image: plzpart.exe
creating a DOS executable
Error! E2028: init_copper_ is an undefined reference
======= ===== ===== ======= ====
plzpart_TEXT CODE AUTO 0000:0000 00000020
-copper_TEXT CODE AUTO 0000:0020 00000997
+copper_TEXT CODE AUTO 0000:0020 0000099b
tweak_TEXT CODE AUTO 0000:09c0 0000006d
plz_TEXT CODE AUTO 0000:0a30 00000a30
_TEXT CODE AUTO 0000:1460 000004c8
0000:0000 main_
Module: copper.o(/dos/z/plz/copper.asm)
0000:0020 _frame_count
+0000:005b* init_copper
+0000:0030* close_copper
0000:0022 _cop_drop
0000:0024* _cop_pal
0000:0028* _do_pal
-0000:002a _cop_start
0000:002c* _cop_scrl
+0000:002a _cop_start
0000:002e _cop_plz
-0000:0030* _close_copper
-0000:005b* _init_copper
-0000:00fb* _pompota
-0000:0129* _moveplz
-0000:0203 _fadepal
-0000:0803 _cop_fadepal
+0000:00fb* pompota
+0000:0129* moveplz
+0000:0207 _fadepal
+0000:0807 _cop_fadepal
Module: tweak.o(/dos/z/plz/tweak.c)
0000:09c0 tw_opengraph2_
0000:0a08 tw_setrgbpalette_