home *** CD-ROM | disk | FTP | other *** search
- Unit JRMIS201 ;
-
- (*╔═════════════════════════════════════════════════════════════════════════╗*)
- (*║ ║*)
- (*║ JR Unit Library - Version 2.01 - June xxrd 1988 ║*)
- (*║ ║*)
- (*║ Machine-depending functions and procedures ║*)
- (*║ ║*)
- (*╚═════════════════════════════════════════════════════════════════════════╝*)
-
- Interface
-
- (*───────────────────────────────────────────────────────────────────────────*)
-
- Uses Dos ;
-
- (*───────────────────────────────────────────────────────────────────────────*)
-
- Const _DOSService = $21 ;
-
- (*───────────────────────────────────────────────────────────────────────────*)
-
- Var _regs8086 : Registers ;
-
- (*───────────────────────────────────────────────────────────────────────────*)
-
- Function _Equipment : Integer ;
- Function _MachineID : String ;
- Function _MemorySize : Integer ;
- Function _ROMDate : String ;
- Function _DOSVersion : String ;
-
- (*───────────────────────────────────────────────────────────────────────────*)
-
- Implementation
-
- (*───────────────────────────────────────────────────────────────────────────*)
-
-
- Function _Equipment ;
- (* Version 1.02 *)
- Var _e : Integer Absolute $0000:$0410 ;
- Begin ;
- _Equipment:=_e ;
- End (* Function _Equipment *) ;
-
- (*───────────────────────────────────────────────────────────────────────────*)
-
- Function _MachineID ;
- (* Version 1.00 *)
- Var _ID : Byte Absolute $F000:$FFFE ;
- Begin ;
- Case _ID Of
- $FF : _MachineID:='PC' ;
- $FE : _MachineID:='XT' ;
- $FD : _MachineID:='Jr' ;
- $FC : _MachineID:='AT' ;
- $2D : _MachineID:='CP' ;
- $9A : _MachineID:='CX'
- Else _MachineID:='UN'
- End ;
- End (* Function _MachineID *) ;
-
- (*───────────────────────────────────────────────────────────────────────────*)
-
- Function _MemorySize ;
- (* Version 1.00 *)
- Var _MemSize : Integer Absolute $0000:$0413 ;
- Begin ;
- _MemorySize:=_MemSize ;
- End (* Function _MemorySize *) ;
-
- (*───────────────────────────────────────────────────────────────────────────*)
-
- Function _ROMDate ;
- (* Version 1.00 *)
- Var _ROMD : String(.8.) Absolute $F000:$FFF4 ;
- Begin ;
- _ROMDate:=Copy(_ROMD,1,8) ;
- End (* Function _ROMDate *) ;
-
- (*───────────────────────────────────────────────────────────────────────────*)
-
- Function _DOSVersion ;
- (* Version 1.02 *)
- Var _major,_minor : String ;
- Begin ;
- _regs8086.ah:=48 ;
- Intr(_DOSService,_regs8086) ;
- Str(_regs8086.al,_major) ; Str(_regs8086.ah,_minor) ;
- _DOSVersion:=_major+'.'+_minor ;
- End (* Procedure _DOSVersion *) ;
-
- (*───────────────────────────────────────────────────────────────────────────*)
-
- End (* Of Unit JRMIS201 *).
-