All Projects → UzixLS → zx-sizif-512

UzixLS / zx-sizif-512

Licence: MIT License
ZX Spectrum CPLD-based clone for rubber case

Programming Languages

KiCad Layout
80 projects
KiCad Schematic
4 projects
SystemVerilog
227 projects
Verilog
626 projects
VHDL
269 projects
assembly
5116 projects

Projects that are alternatives of or similar to zx-sizif-512

lighthouse-of-doom
A simple text-based adventure game
Stars: ✭ 52 (-43.48%)
Mutual labels:  zxspectrum, z80, zx-spectrum
jetpac-disassembly
JETPAC: annotated source code disassembly of this classic 8-bit game (1983, ZX Spectrum)
Stars: ✭ 36 (-60.87%)
Mutual labels:  z80, zx-spectrum
Electron
A mixed signal netlist language (pre-alpha)
Stars: ✭ 52 (-43.48%)
Mutual labels:  pcb, verilog
TMS9918A
TMS9918A video card for RC2014
Stars: ✭ 104 (+13.04%)
Mutual labels:  pcb, z80
VGChips
Video Game custom chips reverse-engineered from silicon
Stars: ✭ 86 (-6.52%)
Mutual labels:  verilog, cpld
Beagle sdr gps
KiwiSDR: BeagleBone web-accessible shortwave receiver and software-defined GPS
Stars: ✭ 300 (+226.09%)
Mutual labels:  pcb, verilog
channels
ZX Spectrum browser for forums and imageboards
Stars: ✭ 52 (-43.48%)
Mutual labels:  z80, zx-spectrum
zx-spec
A unit testing framework for Sinclair ZX Spectrum assembly
Stars: ✭ 32 (-65.22%)
Mutual labels:  z80, zx-spectrum
spectrum128 cpm
zx spectrum 128 emulation on stm32f407 + Grant Searle's CP/M system port ili9341 16 bit display
Stars: ✭ 29 (-68.48%)
Mutual labels:  z80, zx-spectrum
6502.Net
A .Net-based Cross-Assembler for Several 8-Bit Microprocessors
Stars: ✭ 44 (-52.17%)
Mutual labels:  z80, zx-spectrum
The-Great-Escape
Classic ZX Spectrum game "The Great Escape" reverse engineered
Stars: ✭ 69 (-25%)
Mutual labels:  z80, zx-spectrum
HiSoft-C
Disassembled code of HiSoft C compiler for ZX Spectrum
Stars: ✭ 20 (-78.26%)
Mutual labels:  z80, zx-spectrum
apultra
Free open-source compressor for apLib with 5-7% better ratios
Stars: ✭ 84 (-8.7%)
Mutual labels:  z80, zx-spectrum
vforth-next
Z80N Forth system suitable to run on the new ZX Spectrum Next
Stars: ✭ 16 (-82.61%)
Mutual labels:  zxspectrum, zx-spectrum
zx-spectrum-games
Collection of ZX Spectrum annotated game source code dissasemblies as .skool files
Stars: ✭ 35 (-61.96%)
Mutual labels:  z80, zx-spectrum
rc2014-ym2149
KiCad schematics and gerbers for a YM sound card for the RC2014. See it in action here: https://www.youtube.com/watch?v=-iLwi9FagFE
Stars: ✭ 54 (-41.3%)
Mutual labels:  z80
wbi2c
Wishbone controlled I2C controllers
Stars: ✭ 25 (-72.83%)
Mutual labels:  verilog
ruby-vpi
Ruby interface to IEEE 1364-2005 Verilog VPI
Stars: ✭ 15 (-83.7%)
Mutual labels:  verilog
lightroom-macro-pad
Lightroom Macro Pad With CircuitPython Boards
Stars: ✭ 33 (-64.13%)
Mutual labels:  pcb
getting-started
List of ideas for getting started with TimVideos projects
Stars: ✭ 50 (-45.65%)
Mutual labels:  verilog

Sizif-512

Another CPLD-based ZX Spectrum clone for 48K rubber case with some sweet features.

photo

Tech specs

  • Half-sized PCB for 48K rubber case
  • Pentagon, Spectrum 128, Spectrum 48 and Spectrum +3e modes
  • Altera EPM1270 CPLD
  • Real Z80 in 3.5MHz, 4.4MHz, 5.2MHz, 7MHz (no-wait turbo) and 14MHz (turbo with wait-states) modes
  • 512K RAM
  • Real AY-3-8910 with switchable stereo ABC/ACB/mono output
  • Sega 6-button joystick input; Kempston/Sinclair modes
  • Integrated DivMMC and Z-Controller, 1x microSD socket
  • PAL and RGB video output (Sega Mini-DIN/9 connector)
  • Digital video output header for EGA monitors, VGA scandoublers, etc.
  • ULAplus
  • Mono covox (Pentagon standard)
  • SounDrive (4-channel stereo covox)
  • WiFi addon (link)
  • Tape input via 3.5" jack and Bluetooth
  • 9-12V power supply with any polarity
  • Reset and Magic buttons; header for power button

With extension board (link) more features may be added:

  • Turbo Sound FM
  • General Sound (12MHz / 512Kb RAM)
  • SAA1099
  • MIDI sound

Demonstration

Running Pentagon and Spectrum 128 demos: link
Playing music from SD: link
Some random photos: link

Review by Martin's 8-bit blog (in czech): link
Review by The Retro Shack youtube channel: link
Building from scratch experience in Terence Ang's blog: part1 part2 part3

Magic button

Sizif has a number of configurable parameters that you can change on the fly. To do this just hold Magic button for a second.

photo

To navigate menu you can use up-down keys, to change value use enter or left-right keys. Kempston, Sinclair, Cursor and QAOP supported.

If you press Magic button for a short time, the standard NMI handler 'll be called.

Sega gamepad buttons

Sega gamepad support will be available starting from PCB rev.D (or Rev.C with slight modifications).

Button Function in Kempston mode Function in Sinclair mode
Up Up 9
Down Down 8
Left Left 6
Right Right 7
A Button 3 N
B Button 1 0
C Button 2 M
X Turbo Button 3 Turbo N
Y Turbo Button 1 Turbo 0
Z Turbo Button 2 Turbo M
Start Pause Pause
Mode Magic button Magic button

PS/2 keyboard buttons

Button Function
F5 Magic button
F12 Pause
Ctrl+Alt+Del Reboot
Ctrl+Alt+Backspace Reboot
Numpad 8, 2/5, 4, 6 Joystick's up-down-left-right
Numpad 0/Enter Joystick's fire
Alt Joystick's fire

RAM

Sizif contains 512K RAM. There are two cases how to access it:

  1. DivMMC enabled (SD card insert) - 128K available via 7FFDh port, 128K via DFFDh (Profi standart, most compatible with old 128K software) and 128K reserved for DivMMC.
  2. No SD card present - 128K available via 7FFDh and 384K via DFFDh. Please note: ULAplus and Magic button shares one page of memory with DFFD port. If you run 512K-software, it's good idea not to use ULAplus and Magic.

Note that DFFDh port available only in Pentagon mode.

SD card

Sizif have preinstalled esxDOS firmware, which provides ability to load TAP, TRD, SCL, Z80 files and save snapshots. To use this you should format SD cart to FAT32 or FAT16 and unpack latest esxDOS release (link) to card. Also it's recommended to install Long Filename Browser (link) to card.

Tested addons

Changelog & current status

  • Rev.A - first release. Please note the errata (in russian).
  • Rev.B - abandoned. Files kept for historical reason.
  • Rev.C - BDI has been removed; improved video circuit; more capable CPLD; better power circuit; add mono AY mode. Errata.
  • Rev.C1 - fixed incorrect JTAG pinout; fixed incorrect silkscreen for power connector J3, tuned some circuit values. Everything seems to work. Errata.
  • Rev.D:
    • added zxbus connector for in-case addons
    • added support for +3DOS floppy controller
    • added support for Sega 3/6-button gamepad
    • added PS/2
    • added Bluetooth tape input (via M18 module)
    • added alternative microSD card socket footprint
    • fixed compatibility with some keyboards
    • modified tape input circuit
  • Rev.D1: minor changes in pcb layout

Roadmap

PCB rev.E:

  • add fuse on power input
  • add protection diode on 5V power rail
  • rotate left keyboard connector by 180 degrees
  • use film capacitors C37,C38,C39 instead of ceramic (optional)
  • add ability to simultaneously install the power/reset keys together with the connectors
  • tape input circuit reverted to one used in rev.C because it has better sensitivity
  • add speaker amplifier on LM386
  • replace 74HCU04-based crystal clock generator by ICS501-based
  • fix compatibility with wireless sega gamepads
  • replace TRS audio connectors by TRRS with video output
  • add jumper for wiring minidin-9 pin 4 with composite or sync output for compatibility with dirty scart cables

Acknowledgments

This work is inspired and based on a lot of other projects and would hardly have been successful without them:

  • Harlequin (link)
  • Karabas-128 (link)
  • ZX Evolution (link)
  • zx_ula verilog implementation (link)
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].