home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.barnyard.co.uk
/
2015.02.ftp.barnyard.co.uk.tar
/
ftp.barnyard.co.uk
/
cpm
/
walnut-creek-CDROM
/
ENTERPRS
/
CPM
/
UTILS
/
A
/
BIOSR4.ARC
/
C128.INF
next >
Wrap
Text File
|
1987-04-26
|
4KB
|
107 lines
CP/M+ on the C-128
This file is an attempt to explain the relationships between the various
modules in the C-128 BIOS.
There are thirteen ASM files, and five LIB files that comprise the
source code to the C-128 BIOS. Each file relates to specific areas of
the operating system.
CXKRNL.ASM is the root module for the BIOS. This file is supplied by
Digital Research and should not be modified at all, except to add a RET
to unimplemented calls. CXKRNL.ASM calls all of the other modules.
CXIO.ASM contains the character I/O tables, the time routines (CXTIME),
and the RS-232 code. In the version I have supplied here the Drive
Search Chain and the Temporary drive are initailized, the cursor is set
up, and the feel and repeat are set up. Note that the BIOS I have
supplied here will only work on North American C-128s (NTSC), all code
pertaining to PAL has been removed.
CXINTR.ASM is the interupt Driver, it reads the pseudo RS-232 port and
the keyboard storing the characters in a buffer. The modifications I
made were to delete the 40 column cursor flash routine.
CXKEY.ASM is the keybord handler. Changes here were to add a screen
dump, delete all 40 column code. This module is called by CXIO in order
to read and interpret the keyboard. All special funtion code is here
too.
CXEM.ASM is the ADM-3A/ADM-31 terminal emulation. This module handles
all 80 column screen output. Changes were to delete the 40 column code.
CX80.ASM is the rest of the 80 column screen driver as well as the
initialization routines. The status line handling code is here also.
Changes here were to delete the 40 column code.
CXPRINTE.ASM is the print driver. Currently it is only set up for two
printers, selected by the DEVICE command, the default printer is
selected during system initialization in CXIO. This routine has been
rewritten to remove all ASCII conversion code, as well as make it easier
to define the device address and secondary addresses.
CXDISK.ASM is the Disk handling code, this code handles all disk I/O via
the 8502 BIOS (FAST8502.ASM). Currently it supports three 15x1's as A,
B, and C. Changes here were to remove the 40 column status code, drive
E:, and drive D:.
CXRAMDSK.ASM is the RamDisk driver for the 1700/1750 Ram Expander. The
Ramdisk is defined as drive D:. Only a small change was made to the
code that removes the pointer in the DRVTBL to this code if the
1700/1750 is not present.
CXEXT.ASM contains the DRVTBL. It is here that you make the changes in
drive assignment names. Also here is the 6551 drivers (you can actually
make a 6551 based serial port and this code will drive it).
CXSCB.ASM is the System Control Block, which is a storage area for
various system information (see the DRI manual for a definition).
Changes here were to add labels for the drive search chain and the
temporary drive.
CXKYCODE.ASM is the character code definition table, funtion keys are
defined here also.
FAST8502.ASM is the 8502 BIOS code that is stored in bank 0, it contains
the code that calls the 6502 code print and disk drivers.
Z80.LIB contains macros that define Z80 Assembler code for RMAC.
MODEBAUD.LIB contains equates for the character I/O modules.
CXEQU.ASM contains all of the general equates for all of the modules,
as well as important memory locations to the system.
X6502.ASM contains macros for 6502 assembler code for RMAC & MAC.
CPM3.LIB contains macros for the CP/M+ disk definitions.
GENCPM.DAT contains information for GENCPM to generate te system with.
CXSYS.GET is a batch file that builds a system for you automaticly.
----------------------------------------------------------------------
The system these file generate assumes the following hardware:
C-128 (of course)
80 col. monitor, color of monochrome
Two printers, one as device 4, the other as device 5--this can be
changed in the print driver CXPRINTE.ASM
Up to three disk drives either 1541 or 1571s
1750 ram expader
Modem interfaced to the user port. Max speed 1200 baud.
A 6551 (UART) card interfaced to the expansion port (note that this has
not been tested with the 1750 at the same time), to allow for speeds up
to 19.2 Kbaud.
-------------------------------------------------------------------------
NOTE that the virtual disk (DRIVE E:) is _NOT_ supported.
---------------------------------------