Skip to content

ESPectrum 1.0

Compare
Choose a tag to compare
@EremusOne EremusOne released this 29 Dec 22:03
· 127 commits to master since this release
9914e40

New features:

  • Improved SD file system support:

    • Folder support with top status bar showing current folder.
    • Autoindexing of folders with process info through progress bars. No need of manual regeneration of folder indexes from now on.
    • 48 character long file names (plus 4 for extension).
    • Bigger snapshot and tape file open dialog.
    • Special ascii characters support: á,à,ä,â,é,è,ë,ê,í,ì,ï,î,ó,ò,ö,ô,ú,ù,ü,û,Ñ,ñ,Ç,ç,¿,¡,º and ª.
    • Positioning at item on file list starting with A-Z or a-z pressing corresponding letter on PS/2 or ZX Keyboard (SS + letter).
    • Case insensitive search option: press F3 on PS/2 keyboard or F, B on ZX Keyboard and input search text to realtime filter item list.
    • Status bar with total number of items and current item focused on folder.
    • Name autoscroll (keeping focus for more than two seconds) for items with name longer than dialog width.
  • New joystick system through ESPjoy DB9 to PS/2 converter (or DIY converter using ESPectrum joystick special scancodes):

    • Support of two up to 8 buttons joysticks.
    • Easy customization dialog: you can assign Spectrum keys, PS/2 special keys, Kempston actions or Fuller actions to any joystick input.

Important

To be able to use new joystick system with ESPjoy, you have to use new firmware at: https://github.com/dacarsoft/DB9_2_Keyboard/tree/DB9_2_Keyboard_ESPectrum

  • Support of flashing new firmware through SD card: just put firmware file on SD root dir and select update option.

  • New interface elements (progress bars and confirmation dialogs).

  • Overwrite confirmation dialog added to snapshot save and SAVE command.

  • New screen centering system for CRT 15Khz 50hz modes: use CRTL F5-F8 or CS+SS Z,X,C,V in ZX Keyboard.

  • New hardware information dialog (CTRL-F1 or CS+SS+I on ZX kbd).

Changes:

  • Z80 Core: Add accurate emulation of WZ according to the latest discoveries as described in https://spectrumcomputing.co.uk/forums/viewtopic.php?t=10555 Thanks to @redcode !

  • Optimized video and port management routines (emulator is about 5% average faster than previous release).

  • PS/2 joystick emulation improved: added Sinclair and Fuller type joystick emulation.

  • Improved OSD: quicker response and more precise calcs.

  • 16:9 70hz (360x200) modeline adjusted to better comply with IBM 720x400 standard.

Bugfixes:

  • Solved rare sound mute bug after snapshot load.

How to Flash:

Note

The current .bin file can be flashed in any of the three supported boards (Lilygo TTGO VGA32, Antonio Villena's ESPectrum board and Olimex ESP32-SBC-FabGL).

Flashing tutorial (in Spanish, auto translation supported)

https://youtu.be/fxzaKa-J6gk?si=uP7kxuqSSeoLM7vR

Windows:

Use Flash download tools from Espressif to flash it into your board:

Open the ESP32 Flash Download Tool.
Select "ESP32" as chipType.
Select "Develop" as workMode.

Once started:

Select COM Port (whichever one your board has taken).
Select Baud rate (460800 works fine for me).

Finally:

Load .bin file, set 0x0 as address, check it and press START.
Wait until status panel shows "FINISH", power off and power on your board and ENJOY!

Linux / Mac / Windows:

Use esptool.py from Espressif to flash it into your board:

esptool.py -p USB SERIAL DEVICE -b 460800 --before default_reset --after hard_reset --chip esp32 write_flash --flash_mode dio --flash_size detect --flash_freq 40m 0x0 ESPectrum1.0rc3.bin

(Don't forget to change USB SERIAL DEVICE on -p parameter to reflect the serial port where your system has detected your board)