home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Overload
/
ShartewareOverload.cdr
/
utils
/
fcons1.zip
/
IBMBIO.320
< prev
next >
Wrap
Text File
|
1988-12-29
|
7KB
|
293 lines
A
; This is file: IBMBIO.320
;
; This is a patch file for the IBM-DOS 3.20 IBMBIO.COM system file.
;
; DO NOT USE THIS FILE WITH *ANY* OTHER VERSION OF DOS!
; DO NOT USE THIS FILE UNLESS YOU EXPERIENCE THE PROBLEMS NOTED!
;
; Before using this file the IBMBIO.COM file must be unhidden.
; After using this file the IBMBIO.COM file must be rehidden.
;
; To use this file:
; DEBUG IBMBIO.COM <IBMBIO.320
;
; If you apply this patch to the IBMBIO.COM file on your fixed disk,
; DOS will move the IBMBIO.COM file to a new place on your fixed disk.
; However, the IBMBIO.COM file must remain in a specific location.
; The solution is to make a bootable DOS diskette first.
; Then apply the patches to the IBMBIO.COM on the diskette.
; DOS will write to the same place on the diskette!
; Finally, boot the diskette and use SYS to install the new
; IBMBIO.COM file onto the fixed disk.
;
; These patches are for programming errors in IBM-DOS 3.20.
; Since it is not our job to make all versions of DOS correct,
; it is up to you yourself or the manufacturer of your version
; of DOS to make similar fixes if your DOS has similar problems.
; We will provide similar patches only for other MS-DOS versions ONLY
; if they come STRAIGHT from Microsoft with ***NO*** modifications!
; IF you have ENOUGH programming background, you may use the comments
; for each patch to find similar code in your NON-IBM NON-Microsoft
; or NON-3.20 version of DOS and make appropriate patches ON YOUR OWN.
A204B
;Patch 0001:
;Fix INT 19H processing to correctly restore timer and keyboard interrupt
;vectors. (Requires Patch 0002)
;Make sure interrupts are off while replacing interrupts!
;This affects FANSI-CONSOLE and such programs as:
; QuadRam QM2
;And any other program which attempts an INT 19H to "reboot".
;Patch developed by Hersey Micro Consulting, Inc. (313) 994-3259
;Replace:
;xxxx:204B 33C0 XOR AX,AX
;xxxx:204D 8ED8 MOV DS,AX
;xxxx:204F 2E CS:
;xxxx:2050 C43EA201 LES DI,[01A2]
;xxxx:2054 893E0800 MOV [0008],DI
;xxxx:2058 8C060A00 MOV [000A],ES
;xxxx:205C 33C0 XOR AX,AX
;xxxx:205E 8ED8 MOV DS,AX
;xxxx:2060 2E CS:
;xxxx:2061 C43E2802 LES DI,[0228]
;xxxx:2065 893E2000 MOV [0020],DI
;xxxx:2069 8C062200 MOV [0022],ES
;xxxx:206D 33C0 XOR AX,AX
;xxxx:206F 8ED8 MOV DS,AX
;xxxx:2071 2E CS:
;xxxx:2072 C43EA202 LES DI,[02A2]
;xxxx:2076 893E2400 MOV [0024],DI
;xxxx:207A 8C062600 MOV [0026],ES
;xxxx:207E 33C0 XOR AX,AX
;xxxx:2080 8ED8 MOV DS,AX
;xxxx:2082 2E CS:
;xxxx:2083 C43E2103 LES DI,[0321]
;xxxx:2087 893E2800 MOV [0028],DI
;xxxx:208B 8C062A00 MOV [002A],ES
;xxxx:208F 33C0 XOR AX,AX
;xxxx:2091 8ED8 MOV DS,AX
;xxxx:2093 2E CS:
;xxxx:2094 C43E9B03 LES DI,[039B]
;xxxx:2098 893E2C00 MOV [002C],DI
;xxxx:209C 8C062E00 MOV [002E],ES
;xxxx:20A0 33C0 XOR AX,AX
;xxxx:20A2 8ED8 MOV DS,AX
;xxxx:20A4 2E CS:
;xxxx:20A5 C43E1504 LES DI,[0415]
;xxxx:20A9 893E3000 MOV [0030],DI
;xxxx:20AD 8C063200 MOV [0032],ES
;xxxx:20B1 33C0 XOR AX,AX
;xxxx:20B3 8ED8 MOV DS,AX
;xxxx:20B5 2E CS:
;xxxx:20B6 C43E8F04 LES DI,[048F]
;xxxx:20BA 893E3400 MOV [0034],DI
;xxxx:20BE 8C063600 MOV [0036],ES
;xxxx:20C2 33C0 XOR AX,AX
;xxxx:20C4 8ED8 MOV DS,AX
;xxxx:20C6 2E CS:
;xxxx:20C7 C43E0905 LES DI,[0509]
;xxxx:20CB 893E3800 MOV [0038],DI
;xxxx:20CF 8C063A00 MOV [003A],ES
;xxxx:20D3 33C0 XOR AX,AX
;xxxx:20D5 8ED8 MOV DS,AX
;xxxx:20D7 2E CS:
;xxxx:20D8 C43E8305 LES DI,[0583]
;xxxx:20DC 893EC001 MOV [01C0],DI
;xxxx:20E0 8C06C201 MOV [01C2],ES
;xxxx:20E4 33C0 XOR AX,AX
;xxxx:20E6 8ED8 MOV DS,AX
;xxxx:20E8 2E CS:
;xxxx:20E9 C43EFD05 LES DI,[05FD]
;xxxx:20ED 893EC801 MOV [01C8],DI
;xxxx:20F1 8C06CA01 MOV [01CA],ES
;xxxx:20F5 33C0 XOR AX,AX
;xxxx:20F7 8ED8 MOV DS,AX
;xxxx:20F9 2E CS:
;xxxx:20FA C43E7706 LES DI,[0677]
;xxxx:20FE 893ECC01 MOV [01CC],DI
;xxxx:2102 8C06CE01 MOV [01CE],ES
;xxxx:2106 33C0 XOR AX,AX
;xxxx:2108 8ED8 MOV DS,AX
;xxxx:210A 2E CS:
;xxxx:210B C43EF106 LES DI,[06F1]
;xxxx:210F 893ED001 MOV [01D0],DI
;xxxx:2113 8C06D201 MOV [01D2],ES
;xxxx:2117 33C0 XOR AX,AX
;xxxx:2119 8ED8 MOV DS,AX
;xxxx:211B 2E CS:
;xxxx:211C C43E6B07 LES DI,[076B]
;xxxx:2120 893ED401 MOV [01D4],DI
;xxxx:2124 8C06D601 MOV [01D6],ES
;xxxx:2128 33C0 XOR AX,AX
;xxxx:212A 8ED8 MOV DS,AX
;xxxx:212C 2E CS:
;xxxx:212D C43EE507 LES DI,[07E5]
;xxxx:2131 893ED801 MOV [01D8],DI
;xxxx:2135 8C06DA01 MOV [01DA],ES
;xxxx:2139 33C0 XOR AX,AX
;xxxx:213B 8ED8 MOV DS,AX
;xxxx:213D 2E CS:
;xxxx:213E C43E5F08 LES DI,[085F]
;xxxx:2142 893EDC01 MOV [01DC],DI
;xxxx:2146 8C06DE01 MOV [01DE],ES
;xxxx:214A 2E CS:
;xxxx:214B C43E1A1F LES DI,[1F1A]
;xxxx:214F 893E6400 MOV [0064],DI
;xxxx:2153 8C066600 MOV [0066],ES
;With:
XOR AX,AX
MOV ES,AX
MOV AX,CS
MOV DS,AX
CLD
MOV SI,01A2
MOV DI,0008
CLI
MOVSW
MOVSW
;Was 0228 and 02A2
MOV SI,1FC4
MOV DI,0020
MOVSW
MOVSW
MOVSW
MOVSW
MOV SI,0321
MOVSW
MOVSW
MOV SI,039B
MOVSW
MOVSW
MOV SI,0415
MOVSW
MOVSW
MOV SI,048F
MOVSW
MOVSW
MOV SI,0509
MOVSW
MOVSW
MOV SI,0583
MOV DI,01C0
MOVSW
MOVSW
MOV SI,05FD
MOV DI,01C8
MOVSW
MOVSW
MOV SI,0677
MOVSW
MOVSW
MOV SI,06F1
MOVSW
MOVSW
MOV SI,076B
MOVSW
MOVSW
MOV SI,07E5
MOVSW
MOVSW
MOV SI,085F
MOVSW
MOVSW
MOV SI,1F1A
MOV DI,0064
MOVSW
MOVSW
STI
JMP 2157
A20B5
MOVSW
MOVSW
MOV SI,0020
MOV DI,1FC4
MOVSW
MOVSW
MOVSW
MOVSW
MOV AX,DS
RET
F20C4 L8 00
F20CC 2156 90
A2996
;Patch 0002:
;Fix INT 19H processing to correctly restore timer and keyboard interrupt
;vectors. (Requires Patch 0001)
;This affects FANSI-CONSOLE and such programs as:
; QuadRam QM2
;And any other program which attempts an INT 19H to "reboot".
;Patch developed by Hersey Micro Consulting, Inc. (313) 994-3259
;Replace:
;xxxx:2996 33C0 XOR AX,AX
;xxxx:2998 8ED8 MOV DS,AX
;xxxx:299A A14C00 MOV AX,[004C]
;xxxx:299D 2E CS:
;xxxx:299E A3161F MOV [1F16],AX
;xxxx:29A1 2E CS:
;xxxx:29A2 A3C917 MOV [17C9],AX
;xxxx:29A5 A14E00 MOV AX,[004E]
;xxxx:29A8 2E CS:
;xxxx:29A9 A3181F MOV [1F18],AX
;xxxx:29AC 2E CS:
;xxxx:29AD A3CB17 MOV [17CB],AX
;xxxx:29B0 C7064C00D017 MOV WORD PTR [004C],17D0
;xxxx:29B6 8C0E4E00 MOV [004E],CS
;xxxx:29BA A16400 MOV AX,[0064]
;xxxx:29BD 2E CS:
;xxxx:29BE A31A1F MOV [1F1A],AX
;xxxx:29C1 A16600 MOV AX,[0066]
;xxxx:29C4 2E CS:
;xxxx:29C5 A31C1F MOV [1F1C],AX
;xxxx:29C8 C70664001F1F MOV WORD PTR [0064],1F1F
;xxxx:29CE 8C0E6600 MOV [0066],CS
;With:
PUSH ES
PUSHF
XOR AX,AX
MOV DS,AX
CLD
MOV AX,CS
MOV ES,AX
MOV SI,004C
MOV DI,1F16
MOVSW
MOVSW
MOV SI,004C
MOV DI,17C9
MOVSW
MOVSW
MOV SI,0064
MOV DI,1F1A
CALL 20B5
MOV ES,AX
MOV DI,004C
MOV AX,17D0
STOSW
MOV AX,CS
STOSW
MOV DI,0064
MOV AX,1F1F
STOSW
MOV AX,CS
STOSW
POPF
POP ES
A0C48
;Patch 0003:
;Fix bug in floating point processor
;This affects some Microsoft C compiled programs
;(None that appear in the FANSI-CONSOLE package though)
;Patch developed by Microsoft and included in Microsoft C Ver 4.00
;Replace:
;xxxx:0C48
;With:
JMP 0C64
W
Q