HDPARK.LST Sourcer v7.00 PAGE 59,132 ;========================================================================== ;== == ;== HDPARK == ;== == ;== Created: == ;== Code type: special == ;== Passes: 9 Analysis Options on: QRSUX == ;== == ;========================================================================== target EQU 'T3' ; Target assembler: TASM-3.0 ; The following equates show data references outside the range of the program. = 0028 data_1e equ 28h ;*(051B:0028=0) = 0F0A data_2e equ 0F0Ah ;*(051B:0F0A=0) = 004E data_3e equ 4Eh ;*(3ABA:004E=3B0Ah) ;------------------------------------------------------------ seg_a ---- seg_a segment byte public assume cs:seg_a , ds:seg_a 4044:0000 01 data_4 db 1 ; Data table (indexed access) 4044:0001 19 00 00 00 19 00 db 19h, 00h, 00h, 00h, 19h, 00h 4044:0007 00 00 02 AD 00 00 db 00h, 00h, 02h,0ADh, 00h, 00h 4044:000D 00 AD 00 00 db 00h,0ADh, 00h, 00h 4044:0011 006F[00] db 111 dup (0) 4044:0080 8C D8 8E D0 BC CA db 8Ch,0D8h, 8Eh,0D0h,0BCh,0CAh 4044:0086 0A B1 09 BA 1B 09 db 0Ah,0B1h, 09h,0BAh, 1Bh, 09h 4044:008C CD E0 B1 0C CD E0 db 0CDh,0E0h,0B1h, 0Ch,0CDh,0E0h 4044:0092 3D 31 10 72 17 3D db 3Dh, 31h, 10h, 72h, 17h, 3Dh 4044:0098 41 10 77 12 2B C0 db 41h, 10h, 77h, 12h, 2Bh,0C0h 4044:009E 8E C0 26 C4 1E 3C db 8Eh,0C0h, 26h,0C4h, 1Eh, 3Ch 4044:00A4 01 26 8A 07 24 F0 db 01h, 26h, 8Ah, 07h, 24h,0F0h 4044:00AA 3C 50 74 0D BA 90 db 3Ch, 50h, 74h, 0Dh,0BAh, 90h 4044:00B0 09 B1 09 CD E0 33 db 09h,0B1h, 09h,0CDh,0E0h, 33h 4044:00B6 D2 8B CA CD E0 E8 db 0D2h, 8Bh,0CAh,0CDh,0E0h,0E8h 4044:00BC CB 00 E8 DC 00 3C db 0CBh, 00h,0E8h,0DCh, 00h, 3Ch 4044:00C2 FF 74 0D B1 09 BA db 0FFh, 74h, 0Dh,0B1h, 09h,0BAh 4044:00C8 C2 09 CD E0 33 C9 db 0C2h, 09h,0CDh,0E0h, 33h,0C9h 4044:00CE 33 D2 CD E0 db 33h,0D2h,0CDh,0E0h 4044:00D2 loc_1: 4044:00D2 A1 0102 mov ax,word ptr ds:[102h] ; (4044:0102=51Bh) 4044:00D5 8E C0 mov es,ax 4044:00D7 26: 8B 1E 0F0A mov bx,es:data_2e ; (051B:0F0A=0) 4044:00DC 83 FB 00 cmp bx,0 4044:00DF 75 0D jne loc_2 ; Jump if not equal 4044:00E1 BA 093F mov dx,93Fh 4044:00E4 B1 09 mov cl,9 4044:00E6 CD E0 int 0E0h ; ??INT Non-standard interrupt 4044:00E8 33 D2 xor dx,dx ; Zero register 4044:00EA 8B CA mov cx,dx 4044:00EC CD E0 int 0E0h ; ??INT Non-standard interrupt 4044:00EE loc_2: ; xref 4044:00DF 4044:00EE 26: 8B 47 21 mov ax,es:[bx+21h] 4044:00F2 05 0001 add ax,1 4044:00F5 A3 010C mov word ptr ds:[10Ch],ax ; (4044:010C=0Ah) 4044:00F8 C7 06 010E 0000 mov word ptr ds:[10Eh],0 ; (4044:010E=6C6h) 4044:00FE C7 06 0112 051B mov word ptr ds:[112h],51Bh ; (4044:0112=0C601h) 4044:0104 8C 1E 0110 mov word ptr ds:[110h],ds ; (4044:0110=10Ah) 4044:0108 C7 06 0114 000A mov word ptr ds:[114h],0Ah ; (4044:0114=0B06h) 4044:010E C6 06 010A 01 mov byte ptr ds:[10Ah],1 ; (4044:010A=14h) 4044:0113 C6 06 010B 01 mov byte ptr ds:[10Bh],1 ; (4044:010B=1) 4044:0118 E8 00B3 call sub_3 ; (01CE) 4044:011B loc_3: ; xref 4044:0186 4044:011B ,B1 6D mov cl,6Dh ; 'm' 4044:011D BA FFFF mov dx,0FFFFh 4044:0120 CD E0 int 0E0h ; ??INT Non-standard interrupt 4044:0122 0D 0004 or ax,4 4044:0125 8B D0 mov dx,ax 4044:0127 B1 6D mov cl,6Dh ; 'm' 4044:0129 CD E0 int 0E0h ; ??INT Non-standard interrupt 4044:012B B1 09 mov cl,9 4044:012D BA 0A0A mov dx,0A0Ah 4044:0130 CD E0 int 0E0h ; ??INT Non-standard interrupt 4044:0132 loc_4: ; xref 4044:013A 4044:0132 B1 06 mov cl,6 4044:0134 B2 FD mov dl,0FDh 4044:0136 CD E0 int 0E0h ; ??INT Non-standard interrupt 4044:0138 3C 03 cmp al,3 4044:013A 75 F6 jne loc_4 ; Jump if not equal 4044:013C B1 09 mov cl,9 4044:013E BA 093A mov dx,93Ah 4044:0141 CD E0 int 0E0h ; ??INT Non-standard interrupt 4044:0143 B1 6D mov cl,6Dh ; 'm' 4044:0145 BA FFFF mov dx,0FFFFh 4044:0148 CD E0 int 0E0h ; ??INT Non-standard interrupt 4044:014A 25 FFFB and ax,0FFFBh 4044:014D 8B D0 mov dx,ax 4044:014F B1 6D mov cl,6Dh ; 'm' 4044:0151 CD E0 int 0E0h ; ??INT Non-standard interrupt 4044:0153 C7 06 010C 0000 mov word ptr ds:[10Ch],0 ; (4044:010C=0Ah) 4044:0159 C7 06 010E 0000 mov word ptr ds:[10Eh],0 ; (4044:010E=6C6h) 4044:015F C7 06 0112 051B mov word ptr ds:[112h],51Bh ; (4044:0112=0C601h) 4044:0165 8C 1E 0110 mov word ptr ds:[110h],ds ; (4044:0110=10Ah) 4044:0169 C7 06 0114 000A mov word ptr ds:[114h],0Ah ; (4044:0114=0B06h) 4044:016F C6 06 010A 01 mov byte ptr ds:[10Ah],1 ; (4044:010A=14h) 4044:0174 C6 06 010B 01 mov byte ptr ds:[10Bh],1 ; (4044:010B=1) 4044:0179 E8 0052 call sub_3 ; (01CE) 4044:017C B1 0D mov cl,0Dh 4044:017E CD E0 int 0E0h ; ??INT Non-standard interrupt 4044:0180 33 D2 xor dx,dx ; Zero register 4044:0182 8B CA mov cx,dx 4044:0184 CD E0 int 0E0h ; ??INT Non-standard interrupt 4044:0186 E9 FF92 ;* jmp loc_3 ; (011B) 4044:0186 db 0E9h, 92h,0FFh ; Fixup - byte match ;========================================================================== ; SUBROUTINE ;========================================================================== 4044:0189 sub_1 proc near 4044:0189 1E push ds 4044:018A 06 push es 4044:018B B1 1F mov cl,1Fh 4044:018D CD E0 int 0E0h ; ??INT Non-standard interrupt 4044:018F 26: A1 004E mov ax,es:data_3e ; (3ABA:004E=3B0Ah) 4044:0193 A3 0100 mov word ptr ds:[100h],ax ; (4044:0100=112h) 4044:0196 8C 06 0102 mov word ptr ds:[102h],es ; (4044:0102=51Bh) 4044:019A 07 pop es 4044:019B 1F pop ds 4044:019C C3 retn sub_1 endp ;========================================================================== ; SUBROUTINE ;========================================================================== 4044:019D sub_2 proc near 4044:019D 1E push ds 4044:019E 06 push es 4044:019F BA 0104 mov dx,104h 4044:01A2 B1 3C mov cl,3Ch ; '<' 4044:01A4 CD E0 int 0E0h ; ??INT Non-standard interrupt 4044:01A6 07 pop es 4044:01A7 1F pop ds 4044:01A8 3D FFFF cmp ax,0FFFFh 4044:01AB 75 1B jne loc_5 ; Jump if not equal 4044:01AD 1E push ds 4044:01AE 06 push es 4044:01AF BB 0107 mov bx,107h 4044:01B2 C6 07 89 mov byte ptr [bx],89h 4044:01B5 C6 47 01 00 mov byte ptr [bx+1],0 4044:01B9 8B D3 mov dx,bx 4044:01BB B1 31 mov cl,31h ; '1' 4044:01BD CD E0 int 0E0h ; ??INT Non-standard interrupt 4044:01BF 07 pop es 4044:01C0 1F pop ds 4044:01C1 80 3E 0109 01 cmp byte ptr ds:[109h],1 ; (4044:0109=6) 4044:01C6 74 03 je loc_6 ; Jump if equal 4044:01C8 loc_5: ; xref 4044:01AB 4044:01C8 B0 00 mov al,0 4044:01CA C3 retn 4044:01CB loc_6: ; xref 4044:01C6 4044:01CB B0 FF mov al,0FFh 4044:01CD C3 retn sub_2 endp ;========================================================================== ; SUBROUTINE ; ; Called from: 4044:0118, 0179 ;========================================================================== 4044:01CE sub_3 proc near 4044:01CE 06 push es 4044:01CF 1E push ds 4044:01D0 8E 06 0100 mov es,word ptr ds:[100h] ; (4044:0100=112h) 4044:01D4 8A 0E 010A mov cl,byte ptr ds:[10Ah] ; (4044:010A=14h) 4044:01D8 8A 2E 010B mov ch,byte ptr ds:[10Bh] ; (4044:010B=1) 4044:01DC 51 push cx 4044:01DD 8B 0E 010C mov cx,word ptr ds:[10Ch] ; (4044:010C=0Ah) 4044:01E1 51 push cx 4044:01E2 8B 0E 010E mov cx,word ptr ds:[10Eh] ; (4044:010E=6C6h) 4044:01E6 51 push cx 4044:01E7 8B 0E 0110 mov cx,word ptr ds:[110h] ; (4044:0110=10Ah) 4044:01EB 51 push cx 4044:01EC 8B 0E 0112 mov cx,word ptr ds:[112h] ; (4044:0112=0C601h) 4044:01F0 51 push cx 4044:01F1 A1 0114 mov ax,word ptr ds:[114h] ; (4044:0114=0B06h) 4044:01F4 8E 1E 0102 mov ds,word ptr ds:[102h] ; (4044:0102=51Bh) 4044:01F8 FF 1E 0028 call dword ptr ds:data_1e ; (051B:0028=0) 4044:01FC 83 C4 0A add sp,0Ah 4044:01FF 1F pop ds 4044:0200 07 pop es 4044:0201 C3 retn sub_3 endp 4044:0202 0112[00] db 274 dup (0) 4044:0314 96 00 FF db 96h, 00h,0FFh 4044:0317 0814[00] db 2068 dup (0) 4044:0B2B 0D 48 44 50 41 52 db 0Dh, 'HDPARK Utility V1.0', 0Dh, 0Ah 4044:0B31 4B 20 55 74 69 6C 4044:0B37 69 74 79 20 56 31 4044:0B3D 2E 30 0D 0A 4044:0B41 50 47 20 36 38 35 db 'PG 685', 0Dh, 0Ah, '$' 4044:0B47 0D 0A 24 4044:0B4A 5E 43 0D 0A 24 db '^C', 0Dh, 0Ah, '$' 4044:0B4F 0D 0A 44 69 65 20 db 0Dh, 0Ah, 'Die Festplatte besitzt' 4044:0B55 46 65 73 74 70 6C 4044:0B5B 61 74 74 65 20 62 4044:0B61 65 73 69 74 7A 74 4044:0B67 20 6B 65 69 6E 65 db ' keine PCP/M-Partition oder ist ' 4044:0B6D 20 50 43 50 2F 4D 4044:0B73 2D 50 61 72 74 69 4044:0B79 74 69 6F 6E 20 6F 4044:0B7F 64 65 72 20 69 73 4044:0B85 74 20 4044:0B87 6E 6F 63 68 20 6E db 'noch nicht formatiert.', 0Dh, 0Ah 4044:0B8D 69 63 68 74 20 66 4044:0B93 6F 72 6D 61 74 69 4044:0B99 65 72 74 2E 0D 0A 4044:0B9F 24 db '$' 4044:0BA0 0D 0A 46 61 6C 73 db 0Dh, 0Ah, 'Falsches Betriebssyste' 4044:0BA6 63 68 65 73 20 42 4044:0BAC 65 74 72 69 65 62 4044:0BB2 73 73 79 73 74 65 4044:0BB8 6D 20 6F 64 65 72 db 'm oder falsches Geraet.', 0Dh, 0Ah 4044:0BBE 20 66 61 6C 73 63 4044:0BC4 68 65 73 20 47 65 4044:0BCA 72 61 65 74 2E 0D 4044:0BD0 0A 4044:0BD1 24 db '$' 4044:0BD2 0D 0A 48 44 50 41 db 0Dh, 0Ah, 'HDPARK kann nicht gest' 4044:0BD8 52 4B 20 6B 61 6E 4044:0BDE 6E 20 6E 69 63 68 4044:0BE4 74 20 67 65 73 74 4044:0BEA 61 72 74 65 74 20 db 'artet werden, solange andere Pro' 4044:0BF0 77 65 72 64 65 6E 4044:0BF6 2C 20 73 6F 6C 61 4044:0BFC 6E 67 65 20 61 6E 4044:0C02 64 65 72 65 20 50 4044:0C08 72 6F 4044:0C0A 7A 65 73 73 65 20 db 'zesse laufen.', 0Dh, 0Ah, '$' 4044:0C10 6C 61 75 66 65 6E 4044:0C16 2E 0D 0A 24 4044:0C1A 0D 0A 46 65 73 74 db 0Dh, 0Ah, 'Festplatte in Transpor' 4044:0C20 70 6C 61 74 74 65 4044:0C26 20 69 6E 20 54 72 4044:0C2C 61 6E 73 70 6F 72 4044:0C32 74 70 6F 73 69 74 db 'tposition,', 0Dh, 0Ah, 'bitte Ge' 4044:0C38 69 6F 6E 2C 0D 0A 4044:0C3E 62 69 74 74 65 20 4044:0C44 47 65 4044:0C46 72 61 65 74 20 61 db 'raet ausschalten.', 0Dh, 0Ah, '$' 4044:0C4C 75 73 73 63 68 61 4044:0C52 6C 74 65 6E 2E 0D 4044:0C58 0A 24 4044:0C5A 00A6[00] db 166 dup (0) seg_a ends end __________________ Interrupt Usage Synopsis __________________ 14 Ocurrences of non-standard interrupts used (search for ??). __________________ I/O Port Usage Synopsis __________________ No I/O ports used.