.8087 PUBLIC _frame_count PUBLIC _cop_drop PUBLIC _cop_pal PUBLIC _do_pal PUBLIC _cop_start PUBLIC _cop_scrl PUBLIC _cop_plz PUBLIC _close_copper PUBLIC _init_copper PUBLIC _pompota PUBLIC _moveplz PUBLIC _fadepal PUBLIC _cop_fadepal EXTRN _k1:BYTE EXTRN _k2:BYTE EXTRN _k3:BYTE EXTRN _k4:BYTE EXTRN _l1:BYTE EXTRN _l2:BYTE EXTRN _l3:BYTE EXTRN _l4:BYTE EXTRN _il1:BYTE EXTRN _il2:BYTE EXTRN _il3:BYTE EXTRN _il4:BYTE EXTRN _ik1:BYTE EXTRN _ik2:BYTE EXTRN _ik3:BYTE EXTRN _ik4:BYTE DGROUP GROUP _DATA COPPER_TEXT SEGMENT WORD PUBLIC USE16 'CODE' ASSUME CS:COPPER_TEXT, DS:DGROUP, SS:DGROUP _frame_count: add byte ptr [bx+si],al _cop_drop: add byte ptr [bx+si],al _cop_pal: add byte ptr [bx+si],al L$1: add byte ptr [bx+si],al _do_pal: add byte ptr [bx+si],al _cop_start: DB 0 L$2: DB 0 _cop_scrl: add byte ptr [bx+si],al _cop_plz: add word ptr [bx+si],ax _close_copper: mov bx,7 mov ax,0 mov cx,0 mov dx,0 int 0fcH mov bx,7 mov ax,1 mov cx,0 mov dx,0 int 0fcH mov bx,7 mov ax,2 mov cx,0 mov dx,0 int 0fcH retf _init_copper: mov bx,7 mov ax,1 mov cx,offset copper1 mov dx,COPPER_TEXT int 0fcH mov bx,7 mov ax,2 mov cx,offset copper2 mov dx,COPPER_TEXT int 0fcH mov bx,7 mov ax,0 mov cx,offset copper3 mov dx,COPPER_TEXT int 0fcH retf copper1: mov dx,3d4H mov al,0dH mov ah,byte ptr cs:_cop_start out dx,ax mov al,0cH mov ah,byte ptr cs:L$2 out dx,ax mov dx,3c0H mov al,33H out dx,al mov ax,word ptr cs:_cop_scrl out dx,al retf copper2: ;pusha push AX push CX push DX push BX push SP push BP push SI push DI push ds inc word ptr cs:_frame_count cmp word ptr cs:_do_pal,0 je L$3 lds si,dword ptr cs:_cop_pal mov cx,300H mov dx,3c8H mov al,0 out dx,al inc dx ;rep outsb movsb movsb mov word ptr cs:_do_pal,0 L$3: cmp word ptr cs:_cop_plz,0 je L$4 push cs call near ptr _pompota push cs call near ptr _moveplz L$4: cmp word ptr cs:_cop_drop,0 je L$5 push cs call near ptr L$14 L$5: pop ds ;;;;popa pop AX pop CX pop DX pop BX pop SP pop BP pop SI pop DI retf copper3: retf L$6: DB 0 _pompota: mov word ptr cs:0cH,4 mov dx,3d4H mov ax,3c18H out dx,ax mov ax,0f07H out dx,ax mov ax,3c18H inc byte ptr cs:L$6 test byte ptr cs:L$6,1 je L$7 mov word ptr cs:_cop_scrl,0 mov ax,3d18H L$7: out dx,ax retf _moveplz: ;;;;push ds ;;;;push seg _k1 ;;;;pop ds add word ptr DGROUP:_k1,0fffdH and word ptr DGROUP:_k1,0fffH add word ptr DGROUP:_k2,0fffeH and word ptr DGROUP:_k2,0fffH add word ptr DGROUP:_k3,1 and word ptr DGROUP:_k3,0fffH add word ptr DGROUP:_k4,2 and word ptr DGROUP:_k4,0fffH add word ptr DGROUP:_l1,0ffffH and word ptr DGROUP:_l1,0fffH add word ptr DGROUP:_l2,0fffeH and word ptr DGROUP:_l2,0fffH add word ptr DGROUP:_l3,2 and word ptr DGROUP:_l3,0fffH add word ptr DGROUP:_l4,3 and word ptr DGROUP:_l4,0fffH pop ds retf L$8: cmp al,0 cmp al,0 cmp al,0 cmp al,0 cmp ax,3e00H add byte ptr [bx],bh add byte ptr [bx+si],al inc cx add byte ptr [bp+si],al inc sp add byte ptr [bp],al dec ax add byte ptr [bp+si],cl dec sp add byte ptr [bp],cl push cx add byte ptr [si],dl push di add byte ptr [bp+si],bl pop bp add byte ptr [bx+si],ah add byte ptr fs:[bx+si],ch ;;;;insb add byte ptr [bx+si],dh je L$9 L$9: jns L$10 L$10: jge L$11 L$11: add byte ptr [bx+si],87H add byte ptr -6e00H[si],cl add byte ptr -6300H[bx],dl add byte ptr -5800H[bp+si],ah add byte ptr -4b00H[bp],ch add byte ptr -3e00H[bp+di],bh add cl,cl add al,dl add bh,dl add dh,bl add ch,ah add ch,ch add ch,dh add ch,bh add byte ptr [di],al add word ptr [di],cx add word ptr ds:[1f01H],dx add word ptr [bx],sp add word ptr [bx+si],si add word ptr [bx+di],di add word ptr 1[bp+di],ax dec sp add word ptr 1[bp],dx ;;;;pusha push AX push CX push DX push BX push SP push BP push SI push DI add word ptr 1[bp+si],bp je L$12 DB 7eH L$12: DD L$13 L$13: DB 1 _fadepal: add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al add byte ptr [bx+si],al _cop_fadepal: add byte ptr [bx+si],al add byte ptr [bx+si],al L$14: inc word ptr cs:2 cmp word ptr cs:_cop_drop,40H ja L$15 push bx mov bx,word ptr cs:_cop_drop shl bx,1 add bx,offset L$8 mov bx,word ptr cs:[bx] mov dx,3d4H mov al,18H mov ah,bl out dx,ax mov al,7 mov ah,bh shl ah,1 shl ah,1 shl ah,1 shl ah,1 and ah,10H or ah,0fH out dx,ax pop bx retf L$15: cmp word ptr cs:_cop_drop,100H jae L$19 cmp word ptr cs:_cop_drop,80H jae L$16 cmp word ptr cs:_cop_drop,60H ja L$19 L$16: mov word ptr cs:_cop_pal,offset _fadepal mov word ptr cs:L$1,COPPER_TEXT mov word ptr cs:_do_pal,1 cmp word ptr cs:_cop_drop,41H je L$18 mov dx,3d4H mov ax,3c18H out dx,ax mov ax,0f07H out dx,ax push ds push si push di push cx lds si,dword ptr cs:_cop_fadepal mov di,offset _fadepal mov cx,30H L$17: mov ax,word ptr [si] add byte ptr cs:300H[di],al adc byte ptr cs:[di],ah mov ax,word ptr 2[si] add byte ptr cs:301H[di],al adc byte ptr cs:1[di],ah mov ax,word ptr 4[si] add byte ptr cs:302H[di],al adc byte ptr cs:2[di],ah mov ax,word ptr 6[si] add byte ptr cs:303H[di],al adc byte ptr cs:3[di],ah mov ax,word ptr 8[si] add byte ptr cs:304H[di],al adc byte ptr cs:4[di],ah mov ax,word ptr 0aH[si] add byte ptr cs:305H[di],al adc byte ptr cs:5[di],ah mov ax,word ptr 0cH[si] add byte ptr cs:306H[di],al adc byte ptr cs:6[di],ah mov ax,word ptr 0eH[si] add byte ptr cs:307H[di],al adc byte ptr cs:7[di],ah mov ax,word ptr 10H[si] add byte ptr cs:308H[di],al adc byte ptr cs:8[di],ah mov ax,word ptr 12H[si] add byte ptr cs:309H[di],al adc byte ptr cs:9[di],ah mov ax,word ptr 14H[si] add byte ptr cs:30aH[di],al adc byte ptr cs:0aH[di],ah mov ax,word ptr 16H[si] add byte ptr cs:30bH[di],al adc byte ptr cs:0bH[di],ah mov ax,word ptr 18H[si] add byte ptr cs:30cH[di],al adc byte ptr cs:0cH[di],ah mov ax,word ptr 1aH[si] add byte ptr cs:30dH[di],al adc byte ptr cs:0dH[di],ah mov ax,word ptr 1cH[si] add byte ptr cs:30eH[di],al adc byte ptr cs:0eH[di],ah mov ax,word ptr 1eH[si] add byte ptr cs:30fH[di],al adc byte ptr cs:0fH[di],ah add di,10H add si,20H dec cx jne L$17 pop cx pop di pop si pop ds retf L$18: mov dx,3d4H mov ax,9018H out dx,ax mov ax,1f07H out dx,ax push cs call near ptr L$20 retf L$19: mov word ptr cs:_cop_drop,0 retf L$20: push ax push ds ;;;;push seg _k1 pop ds mov ax,word ptr DGROUP:_il1 mov word ptr DGROUP:_l1,ax mov ax,word ptr DGROUP:_il2 mov word ptr DGROUP:_l2,ax mov ax,word ptr DGROUP:_il3 mov word ptr DGROUP:_l3,ax mov ax,word ptr DGROUP:_il4 mov word ptr DGROUP:_l4,ax mov ax,word ptr DGROUP:_ik1 mov word ptr DGROUP:_k1,ax mov ax,word ptr DGROUP:_ik2 mov word ptr DGROUP:_k2,ax mov ax,word ptr DGROUP:_ik3 mov word ptr DGROUP:_k3,ax mov ax,word ptr DGROUP:_ik4 mov word ptr DGROUP:_k4,ax pop ds pop ax retf COPPER_TEXT ENDS _DATA SEGMENT WORD PUBLIC USE16 'DATA' _DATA ENDS END