Skip to content
This repository has been archived by the owner on Aug 20, 2024. It is now read-only.

Commit

Permalink
docs
Browse files Browse the repository at this point in the history
  • Loading branch information
mortenjc committed Aug 19, 2024
1 parent fe31c16 commit b648597
Showing 1 changed file with 13 additions and 2 deletions.
15 changes: 13 additions & 2 deletions docs/source/emulator.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,26 @@
Emulator
========

The **emulator** runs the program and displays the runtime status
of the program counter, registers, decoded instructions, etc.
The Q1 Emulator architecture is shown below. Operationally it consists of
two paths, one for initialisation (blue arrows going up) and one for the runtime
emulation (yellow arros going down). The Q1 Emulator makes use of a **z80
emulator** which in turn interfaces to **memory** and **IO**. Memory is loaded
with **programs** by a **loader** and IO devices are initialised: **display buffer**
is cleared and **disk** is populated with a **filesystem**. These abstractions
are described in the **Python Modules** section.

On the initialisation is done the emulator enters a repeated series of single
instruction **steps**.


.. figure:: images/emuarch.png
:width: 800
:align: center

Q1 Emulator Architecture

The **emulator** runs the program and displays the runtime status
of the program counter, registers, decoded instructions, etc.

The emulator can be run with disassembly:

Expand Down

0 comments on commit b648597

Please sign in to comment.