home *** CD-ROM | disk | FTP | other *** search
- 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.
- ---------------------------------------