Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/obijuan/z80-fpga
Z80 CPU for OpenFPGAs, with Icestudio
https://github.com/obijuan/z80-fpga
fpga fpga-soc ice40 icestudio z80
Last synced: 8 days ago
JSON representation
Z80 CPU for OpenFPGAs, with Icestudio
- Host: GitHub
- URL: https://github.com/obijuan/z80-fpga
- Owner: Obijuan
- License: gpl-3.0
- Created: 2019-08-19T19:40:26.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2024-06-06T17:10:57.000Z (5 months ago)
- Last Synced: 2024-06-07T13:24:13.077Z (5 months ago)
- Topics: fpga, fpga-soc, ice40, icestudio, z80
- Language: Assembly
- Size: 4.45 MB
- Stars: 70
- Watchers: 7
- Forks: 17
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
![](https://github.com/Obijuan/Z80-FPGA/raw/master/wiki/project-logo.png)
# Z80-FPGA
Z80 CPU for OpenFPGAs, with Icestudio* Based on the [iceZ0mb1e project](https://github.com/abnoname/iceZ0mb1e) by abnoname and the [TV80 CPU](https://opencores.org/project,tv80,overview)
## Quick start
* Open the **z80-soc-16KB-Boot.ice** file with Icestudio
* Connect the Alhambra-II board (or compatible) and upload the design
* After 1 min aprox. the LEDs will show the value 0xAA
* Let's upload a program test: open a terminal
* Move to the roms folder
* Execute the following line:
```
python3 z80-loader.py 05-counter.bin
```
* After 2 seconds you will see a binary counter running on the LEDs* If you want to assemble that example, execute the following comands:
```
z80asm -o 05-counter.bin 05-counter.s
```## UART and pushbutton
The **z80-soc-16KB-Boot-uart.ice** file adds the following:
* TX/RX Uart mapped in ports 0x10 (Data) and 0x11 (Status). The Data port is for transmitting (out) and receiving (in)
* Input port 0x00. The SW2 button can be read from the bit 0 of port 0x00Have a look at this examples for more details:
* 08-button-seq.s
* UART-*.s