2

I have an Intel 8080 core and would like to build the minimal computer system around it to run Tiny BASIC interactively. I am building this computer on an FPGA, so I am not asking about actual components, rather, the connection of the peripherals in terms of ports or memory mapped addresses.

An ideal answer to my question would consist of a link to a Tiny BASIC binary ready to be loaded on an Intel 8080, together with memory layout information (e.g. "put the binary at RAM starting at 0x0000 with size at least 4 K"), initialization ("reset PC to 0x0100 to start"), and IO (e.g. "if a byte is written to port 0x01, show it as ASCII to the user. If a byte is read from port 0x02, return 1 if a new input byte is ready, 0 otherwise. If a byte is read from port 0x69, return the next input byte", or "interrupt with RST 3 when a new input byte is available and put it to RAM address 0Ff000").

I should also add that I am looking for a standalone version, not one that requires CP/M. The simpler the peripherals, the better.

1
  • You can emulate the surroundings for a program loaded by and running under CP/M relatively simple, as you most likely only need to load the program at $0100 and set up page zero and a small stub in high memory. That is naturally assuming that BASIC does not do file access. Sep 10, 2020 at 14:14

1 Answer 1

2

I have Tiny BASIC 1 and 2 source code, for exactly the same reason you described (my own 8080-based computer).

Here is a source code and a binary, ready to loaded from 01000h. Serial communication is provided by ACIA MC6850 - see lines 1420 - 1475, routines outc and chkio. ACIA is accessed via 0DEh (control/status register) and 0DFh (data register).

So: Load it from 1000h, start it with JMP 01000h, reading from 0DEh awaits a status byte (bit 2=1 when ACIA is clear to send, bit 1=1 when ACIA has received data), reading from 0DFh reads received data, writing to 0DFh sends data to transmission.

I believe you can appreciate VHDL implementation of MC6850 for FPGA.

(Feel free to contact me for further details or help with customization for your hardware.)

4

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .