Skip to content

johndeckardsoftware/spyccy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SPYCCY

Just another ZX Spectrum emulator completely written in Python.

Features

  • Emulates the ZXSpectrum 48K and 128K machines
  • Handles all Z80 instructions, documented and undocumented
  • Beeper and AY-8910 chip audio
  • Loads SZX, Z80 and SNA snapshots
  • Save Z80 snapshots
  • Loads TAP tape files and partially TZX tape files
  • Save TAP tape images
  • Run BASIC programs edited from spyccy editor (manages zmakebas syntax)
  • TR-DOS rom extension
  • Read and write Floppy TRD and SCL format
  • Original and Standard keyboard
  • Joystick (Sinclair, Kempston, Programmable, Cursor, Fuller)
  • Currah µSource rom extension
  • Sinclair Zx2 interface cartridge
  • Platforms: Linux and Windows

Requirements

All the code is written in Python. Optional c libraries are included to boost screen and AY-8910 handling.

required libraries:

  • tkinter ("pip install tk" or "apt-get install python3-tk")
  • pygame ("pip install pygame" or "apt-get install python3-pygame")
  • numpy ("pip install numpy")
  • pillow ("pip install pilllow" or "apt-get install python3-pil python3-pil.imagetk")
  • cffi [optional to boost screen rendering] ("pip install cffi" or "apt-get install python3-cffi")
  • zxbasic [optional to generate assembler code from basic sources] ("pip install zxbasic")

Run

  1. Clone the repository to your local machine:

    git clone https://github.com/johndeckardsoftware/spyccy.git
  2. Navigate to the project directory:

    cd spyccy
  3. Run the application:

    python spyccy

Contributions

These days, releasing open source code tends to come with an unspoken social contract, so I'd like to set some expectations...

This is a personal project, created for my own enjoyment, and my act of publishing the code does not come with any commitment to provide technical support or assistance. I'm always happy to hear of other people getting similar enjoyment from hacking on the code, and pull requests are welcome, but I can't promise to review them or shepherd them into an "official" release on any sort of timescale.

License

SPYCCY is open source software. The source code is distributed under the terms of GNU General Public License (GPLv3).

Acknowledgements

This software is inspired, or derive code from the following open source projects:

About

Just another ZX Spectrum emulator completely written in Python.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors