Grant Searle's micro UK101 replica emulator
This is an emulator of my Grant Searle's micro UK101 single board computer for Unix-like systems. It is a fork of my Apple I replica emulator but shares a lot of code because both computers are very similar.
Just type 'make' or 'gmake', depending on your system.
You must download the EPROM image from Grant Searle's web page, at this location:
http://searle.x10host.com/uk101/rom.zip
Just unzip the file and place the all.rom file in the same directory where the uk101re executable file is.
Just execute 'uk101re'. There are some command line options:
-h, --help Show help. -v, --version Show UK101RE version. -t, --turbo Enable turbo mode. -r romfile, --rom romfile Specify ROM file.
Turbo: The micro UK101 replica runs 1 MHz and the emulator tries to match that speed. Using the Turbo option makes the emulator to run as fast as possible.
Rom: This option is used to specify an alternate rom file. The entire rom is mapped into addresses 0x8000 - 0xFFFF except for the segment 0xF000 - 0xF7FF where the ACIA is mapped.
You can type your programs in the terminal, just as you would do with a real micro UK101 single board computer. You can also paste text into the console to enter large programs. Alternatively, you can use common text files (text files with commands to type into the emulator) as argument when launching the emulator, for example, type:
./uk101re Software/BasicHelloWorld.txt
to execute a simple Hello World basic program. Note that while loading a text file, turbo option is enabled.
While running, you can use these keyboard shortcuts:
Ctrl-R: Resets CPU. RAM content is kept. Ctrl-X: Quits emulator.
The first thing you will see when launching the emulator is:
Micro UK101 C/W/M?
Press C for a cold restart. RAM will be erased. After pressing C, you will be asked for ram size and terminal width. Just press enter for automatic / default values.
Press W for a warm restart. RAM content will be preserved. Use ONLY after a CPU reset.
Press M to enter CEGMON monitor software.
Use capital letters for all comands, both in CEGMON and BASIC.
While running a BASIC program, you can use Ctrl-C to stop the program. Use the CONT command to continue it.
In the Software directory you can find some programs:
Acey-Deucy.txt: A cards game from UK101 user manual in BASIC.
Decimal2Binary.txt: An improved decimal to binary converter based on the one at UK101 user manual in BASIC.
Fahrenheit-Celsius.txt: A small utility to convert Celsius to Fahrenheit temperatures nad vice-versa from the UK101 user manual in BASIC.
HelloWorld.txt: Simple Hello World program in BASIC.
NumberGuess.txt: A simple guess-the-number game in BASIC
PowersOfTwo.txt: Displays the powers of two in BASIC.
PrimeNumbers.txt: Simple program in BASIC that calculate prime numbers.
Sinewave.txt: A program in BASIC that draws a sinewave in the terminal.
Some useful documentation:
Grant Searle's micro UK101 web page: http://searle.x10host.com/uk101/uk101.html
UK101 manual: https://www.flaxcottage.com/UK101/UK101Manual.pdf
CEGMON manual: https://www.flaxcottage.com/UK101/CEGMON/CEGMON_manual.pdf
6502 Instruction set: https://www.masswerk.at/6502/6502_instruction_set.html
The source files of the micro UK101 Replica Emulator in this repository are made available under the GPLv3 license. The example files under the Software directory are included for convenience only and all have their own license, and are not part of the micro UK101 Replica Emulator.