Search   
Home  Print View  

 

Software

Branch Content

MC-EPROM

The MC-EPROM occupies 8 MB from address 0000H to 1fffH. It contains support for the START button in the Console (NMI interrupt), RST instructions, and some utilitiles, notably an Absolute Loader that allows to bring software into RAM from external media via RS-232.

Organization of the MC EPROM

When the LC-81 is powered-up or reset, a bus request is asserted to the microprocessor so execution at address 0000H can not really start. Nevertheless, an idle loop (jump to 0000H) has been placed there to prevent further execution in case the BUSREQ line is not fired on time.

It follows the table for RST instructions starting at address 0008H. This table is filled with jumps to corresponding addresses in RAM from 2048H to 207fH so external software can make use of RST instructions without having to burn the EPROM. This brings support for RST 08H to RST 32H.

At address 0066H is a jump to a START routine in support to the Console's START button. Then a series of utilities follow.

This content, currently at version 0.44, is temporary. In the future I may find a better use for those 8KB or memory.

Support for the Console START button

When the Operator presses the START button in the Console, an NMI interrupt request is asserted to the microprocessor which service routine is at address 0066H. This address contains a jump to the START routine listed below:

START
    in    a, (SARL)
    ld    l, a
    in    a, (SARH)
    ld    h, a
    jp    (hl)

SAR is the Start Address Register (16 bits, split in two 8-bits registers SARL, SARH) located in the Console Register Board in the MC Unit. This register is loaded from the Console's swiches when the LOAD button is pressed, then loaded into the Program Counter register (PC) by this routine (as we can infer from the code) when the START button is pressed.

These seven bytes of machine code is the only software support that the Console requires. The rest of its functionality is based on hard-wired logic.

Absolute Loader

Hex to Bin conversion routine

LC-81 Homebrew Minicomputer -- this software is based on Help Books running at melissa