Files
Sepp J Morris 31738079c4 Upload
Digital Research
2020-11-06 18:50:37 +01:00

274 lines
18 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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.