Code Monkey home page Code Monkey logo

zx-sizif-512's Introduction

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 ans SpecDrum standards)
  • 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
Right Right (bit 0) 7
Left Left (bit 1) 6
Down Down (bit 2) 8
Up Up (bit 3) 9
A Button 3 (bit 6) N
B Button 1 (bit 4) 0
C Button 2 (bit 5) M
X Turbo Button 3 (bit 6) Turbo N
Y Turbo Button 1 (bit 4) Turbo 0
Z Turbo Button 2 (bit 5) Turbo M
Start Pause Pause
Mode Magic button Magic button

PS/2 keyboard buttons

Button Function
F1 Pause
F2 Fast forward
F5 Magic button
F10 Reboot
F12 Reboot
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
  • Rev.E:
    • added fuse on power input
    • added protection diode on 5V power rail
    • rotated left keyboard connector by 180 degrees
    • replaced TRS audio connectors by TRRS with video output
    • changed C37,C38,C39 footprint to able to install film capacitors
    • improved compatibility with wireless sega gamepads - 3.3V power replaced by 5V
    • added ability to simultaneously install the power/reset keys together with the connectors
    • added jumper for wiring minidin-9 pin 4 with composite or sync output for compatibility with dirty scart cables
    • added ability to install full-height 4.43MHz crystal
    • all 0.5/0.3 vias replaced by 0.6/0.3
    • experimental: 74HCU04-based speaker amplifier replaced by LM386-based
    • experimental: 74HCU04-based tape input circuit replaced by LM311-based
    • experimental: 74HCU04-based crystal clock generator replaced by ICS501-based
  • Rev.E1:
    • reverted experimental rev.E changes

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)

zx-sizif-512's People

Contributors

uzixls avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

zx-sizif-512's Issues

Latest Firmware v20221002- cannot find "AUTO" CPU setting

Hi,

One of the features I really liked about the latest firmware version v20221002 is the ability to use the "AUTO" CPU speed function, this will greatly speed up browsing for games and loading.

We burned the firmware but we cannot locate the AUTO CPU speed setting, the CPU speed settings are as before with no AUTO option.

We are using Revision "D" firmware.

Can you help please?

cpld.rev.D.pof PCB ref D

Hello,
I have a problem with cpld.rev.D.pof batch dated 03.04.2023, AY is not working. AY in tests is not detected and the thanks is a terrible noise.

Batch cpld.rev.D.pof dated 30.08.2022 works correctly AY

What is the problem ? has something changed in the wiring diagram ?

Greetings very much

RGBS Jitters every few seconds.

Hi,

Once again thanks for this great project/

RGBS video jitters every few secs, it happens on both Sizif that I built.
The is sent from the Sizif video out to a GBS=Control upscaler, image is nice, sharp and clean except for the jitters.
Video is in PAL mode and GBS-Control detects it correctly as PAL.
Jitter also doesn't happen with my other game consoles.
Here is a clip of the jitter - https://youtu.be/2h-cfVabX18

Thanks in advance.
Terence

Possible wrong connection in MIC jack (rev E1)

I think the MIC jack has wrong VID_MIC connection. The signal goes to the sleeve.
I didn't see any TRRS Jack to 3xRCA AV cable, which have connection like this.

sizif_e1_mic_jack_before

IMHO the VID_MIC signal should be connected to the second ring, and GND to the sleeve. Like this:

sizif_e1_mic_jack_after

Potential Component damage if using long TRRS plugs.

Hello.

Awesome project, I keep getting asked to build these for people so have made a few now.

Whilst building/testing the E1 version I have spotted a potential issue regarding the TRRS connectors. I have found some TRRS plugs that are long enough that when fully inserted will project beyond the end of the PJ-322 socket (J12) and break diodes D11, D15. I have mitigated this issue by fitting SMD diodes under the PCB.

Suggest moving D11, D15 away from back of socket (or using SMD parts).

To a lesser extent this could affect J15 if accidentally plugged in there, so you could also consider moving R47 & C51.

Thanks, Regards

James

Не работает клавиатура PS/2.

Собрал плату, подключил клавиатуру PS/2. При нажатии на клавиши нет реакции. Осциллографом проверил, сигналы от клавиатуры идут, после транзисторов тоже есть сигналы. Реакции на клавиатуру нет.

SVF files

Can you provide SVF files in release page. I have Mac and can program CPLD using OpenOCD, but I need SVF file, not POF file.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.