1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
|
; SCCSID = @(#)IBMEXTRN.ASM 1.11 85/11/18
;This is for IBMINIT module.
;=======================================================
;REVISION HISTORY:
;AN000; - NEW Version 4.00. J.K.
;AC000; - Modified Line 4.00. J.K.
;ANxxx; - PTMyyy
;==============================================================================
;AN001; D486 SHARE installation for large media 2/23/88 J.K.
;==============================================================================
EXTRN ORIG13:DWORD,ORIG19:DWORD
EXTRN COM2DEV:WORD,COM1DEV:WORD
EXTRN COM4DEV:WORD,COM3DEV:WORD
EXTRN LPT3DEV:WORD,LPT2DEV:WORD,LPT1DEV:WORD
EXTRN HARDDRV:BYTE,HARDNUM:BYTE,DRVMAX:BYTE,HDSKTAB:WORD
EXTRN DSKDRVS:WORD,HNUM:BYTE,EOT:BYTE,FHAVE96:BYTE
EXTRN REAL13:DWORD,DAYCNT:WORD,CONHEADER:WORD
EXTRN TWOHARD:BYTE,INT_2F_NEXT:DWORD
EXTRN BDSH:WORD,BDSX:WORD,START_BDS:DWORD
EXTRN FHAVEK09:BYTE, NEW_ROM:BYTE
EXTRN SINGLE:BYTE
EXTRN BDSMs:BYTE ;for Mini Disk -J.K. 4/7/86
EXTRN HaveCMOSClock:byte ;set by IBMINIT. Used by IBMCLOCK.ASM
EXTRN BinToBCD:word ;set by IBMINIT. Used by IBMCLOCK.ASM
EXTRN DaycntToDay:word ;set by IBMINIT. Used by IBMCLOCK.ASM
EXTRN OLD13:DWORD
extrn Temp_H:word ;J.K. For 32 bit calculation. IBMDISK
extrn Start_Sec_H:word ;J.K. IBMDISK.
extrn KEYRD_Func:byte ;J.K. For IBMCON. Defined in IBMBDATA.
extrn KEYSTS_Func:byte ;J.K. For IBMCON. Defined in IBMBDATA.
extrn DiskSector:byte ;J.K. IBMBDATA
extrn Bpb_In_Sector:word ;J.K. IBMBDATA
extrn SecPerCLusInSector:Byte ;J.K. IBMBDATA
extrn NumberOfFats:byte ;J.K. IBMBDATA
extrn MediaByte:byte ;J.K. IBMBDATA
extrn Ext_Boot_Sig:Byte ;J.K. IBMBDATA
extrn Boot_Serial_L:Word ;J.K. IBMBDATA
extrn Boot_Serial_H:Word ;J.K. IBMBDATA
extrn Boot_Volume_Label:Byte ;J.K. IBMBDATA
extrn Boot_System_ID:Byte ;J.K. IBMBDATA
extrn Fat_12_ID:Byte ;J.K. IBMDISK
extrn Fat_16_ID:Byte ;J.K. IBMDISK
extrn Vol_No_Name:Byte ;J.K. IBMDISK
extrn MotorStartup:Byte ;J.K. IBMBDATA
extrn DoubleWordMov:Byte ;J.K. IBMDISK
extrn Model_Byte:Byte ;J.K. IBMBIO2
extrn Secondary_Model_Byte:Byte ;J.K. IBMBIO2
IF iTEST
IFNDEF NUMBUF
EXTRN NUMBUF:BYTE,DIGITS:BYTE,FTESTBITS:WORD
ENDIF
ENDIF
EXTRN START$:NEAR,ERROUT:NEAR,BLOCK13:FAR,INT19:FAR
EXTRN INTRET:NEAR,HDRIVE:NEAR,DRIVEX:NEAR,INT13:FAR,CBREAK:NEAR,OUTCHR:NEAR
EXTRN DISKRD:NEAR,MEDIA_PATCH:NEAR,GETBP1_PATCH:NEAR
EXTRN SET_PATCH:NEAR,DISKIO_PATCH:NEAR,DSKERR:NEAR,INIT_PATCH:NEAR
EXTRN TABLE_PATCH:NEAR,EXIT:NEAR,CHANGED_PATCH:NEAR
EXTRN ERRIN:NEAR,GETBP:NEAR,SWPDSK:NEAR
EXTRN OUTCHR:NEAR,WRMSG:NEAR,TIME_TO_TICKS:NEAR
EXTRN INT2F_DISK:NEAR,INSTALL_BDS:NEAR,SETDRIVE:NEAR
extrn Mov_Media_IDs:Near ;J.K.
extrn Clear_IDs:Near ;J.K.
IF iTEST
IFNDEF NUMBUF
EXTRN MSGNUM:NEAR,MSGOUT:NEAR,dumpbytes:near,hex_to_ascii:near
EXTRN outchar:near
ENDIF
ENDIF
SYSINITSEG SEGMENT PUBLIC 'SYSTEM_INIT'
ASSUME CS:SYSINITSEG
EXTRN CURRENT_DOS_LOCATION:WORD
EXTRN FINAL_DOS_LOCATION:WORD
EXTRN DEVICE_LIST:DWORD
EXTRN MEMORY_SIZE:WORD
EXTRN DEFAULT_DRIVE:BYTE
EXTRN BUFFERS:WORD
EXTRN SYSINIT:FAR
extrn Big_Media_Flag:Byte ;AN001;
SYSINITSEG ENDS
ASSUME CS:CODE
; END OF DISK MODULES FOR CONFIGURATION
EXTRN END96TPI:BYTE
EXTRN ENDTWOHARD:BYTE
EXTRN ENDONEHARD:BYTE
EXTRN ENDSWAP:BYTE
EXTRN ENDFLOPPY:BYTE
; IBM FIXED UP AT ROM
EXTRN IBM_DISK_IO:FAR
|