--- /dev/null
+.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