



Introduction

FBZX Wii is a ZX Spectrum emulator.

The project is based on FBZX originally written by Sergio Costas (http://www.rastersoft.com/fbzx.html). The code has been ported to Wii and largely improved with many new features by Oibaf.

FBZX Wii can be found on Github at github.com/Oibaf66/fbzx-wii

There is also a gamecube port here FBZX GC

The program uses SDL Wii library.

Features

Vitual keyboard

Menu with snapshots

The main features are:

Emulates accurately the Original 48Kspectrum (both issue 2 and issue 3), the classic 128K, the Amstrad Plus 2, the Amstrad Plus 2A, the Spanish 128K and the NTSC 48k. This includes screen, keyboard and sound (both speaker and AY-3-8912 chip).

Screen emulation is extremely accurate, so it can emulate border effects and even attribute effects.

In precision mode floating bus and interrupt timing are accuratly emulated.

Frambuffer resolution at 640X480 or 320X240.

Supports Z80 snapshots, both loading and saving, and loading .SNA snapshots.

Supports TAP (both read and write) and TZX (only read) tape files, supporting normal speed loading and instant loading.

Supports RZX files (play, record, add bookmark, edit, browsing)

Tape browser.

Supports POKE files.

Supports ZIP files.

Support for SE Basic

FTP client for loading games from internet repositories (e.g. WOS).

Emulates up to 2 joysticks of types: Kempston, Cursor, Fuller , Sinclair1, Sinclair2 and QAOP.

Support for gamecube and WIIU PRO controllers

All the wiimote, nunchuck and classic controller buttons and joypads are fully configurable.

IR Virtual keyboard support.

Emulates Interface I, Interface II and Microdrive.

Emulates ULAPlus.

Emulates Currah microspeech and Fuller Box.

Based in a new, fully free, Z80 emulator (Z80Free).





Installation

Untar the binary release on your SD card or usb device, which gives you a structure as follows:

/fbzx-wii/fbzx /fbzx-wii/spectrum-roms /fbzx-wii/tapes /fbzx-wii/snapshots /fbzx-wii/microdrives /fbzx-wii/scr /fbzx-wii/scr2 /fbzx-wii/configurations /apps/fbzx-wii

Put .z80 and .sna files in /fbzx-wii/snapshots or .tap and .tzx files in /fbzx-wii/tapes on your SD card or usb device.

The roms are in /fbzx-wii/spectrum-roms. Although Amstrad is the current proprietary of the copyright of the original ZX Spectrum ROMs, they have kindly given their permission for its redistribution with Spectrum emulators.

Currah microspeech ROM is not provided with FBZX Wii. You have to put "currah.rom" file in /fbzx-wii/spectrum-roms to have Currah microspeech emulation.

Usage

FBZX wii has 2 GUIs. One is accessible from the keyboard through the Function Keys (F1 for help) and one from the wiimote pressing the home button.

From the wiimote press 1 or A to select an item and 2 or B to come back to the previous menu. Press the "+" button to access the virtual keyboard which uses wiimote IR pointer or point the wiimote at the screen (it depends on the configuration).

The in-game menu allows you to insert tapes, load them and configure the display, joysticks etc. The easiest way to play a game is to load a snapshot (.z80 .sna and .rom files).

You can also insert a tape file (.tap and .tzx) and then load the file in the tape menu (it simulates the command Load "").

The option instant load allows to load tape file in few seconds. For TZX files, if the emulator finds a custom loading routine which can not be managed by the "instant load", it starts the tape.

If the "instant load" does not work, try to disable the instant load option and enable "turbo auto mode" which speeds up the emulator during the loading.

A tape browser allows to select the section of file you want to load.

RZX files can be played and recoreded. During playing use "-" to pause. During recording use "Bookmark" to add a memory snapshot. Use "Brows" to move to a bookmark during playing or recording. Use "Edit" to start recording from a bookmark for an existing rzx file.

It is possible to set precision emulation required by some demo graphic programs. Turbo mode is disable in this mode. In precision emulation, some performance issues can arise; in this case try to switch to 320X240 resolution.

You can also load a file from a usb disk, from your PC via SMB and from Internet via FTP using a wi-fi connection. You should configure fbzx.net file and select the option in the tools menu. For SMB see the tinysmb page for additional information and troubleshooting .

You can bind all the keyboard buttons and joystick fire to the wiimote/nunchuck buttons and to the joypad.

Snapshots and scr files will be stored on the SD card or usb device.

The general preferences are saved (joystick type, machine, buttons bindings, etc.) from the main in-game menu and they are loaded on start-up.

You can also save the game preferences which can be automatically loaded with the tape/snapshot if the related option is set.

If the selected file contains a screen it will appear on the video screen during the menu navigation otherwise you have to save a screen snapshot to have this feature. To remove the screen preview use the left and rigth controls.

If rumble is enabled, the wiimote rumbles each time the fire button is pressed

In-emulator controls

Action Joystick direction To be configured Fire button (configurable) Configurable for keypresses in the menu F1 Enter menu Call Virtual Keyboard Pause the emulator

Menu controls

Action Up, Down, Left, Right Move up/down/left/right in the menu Pgdown/Pgup Move one page down/up in the menu Enter Select current entry Esc Exit from menu

Configuration

FBZX is highly configurable. Access the menu to configure the emulation and wiimote settings.

The menu support allows selecting which machine model to emulate.

Reporting issues

Please report issues and feature requests in the fbzx-wii issue tracker on Github.

Changelog

Version 15.0

Added WIIU PRO controller support

Added Gamecube controller support

Fast up and down menu scrolling with the second joystick

Fixed bug in D-Right conf

Version 14.0

Added RZX support (play, record, add bookmark, edit, browsing) in tool menu

Preview screen auto extracted from tap, tzx, sna, z80 and rzx files

Left and right togle preview windows

Horizontally scrolling menu

Last selected file remebered in the menu

Extended z80 file format to +2, +3, +2a models

Added AY info emulation in z80 file format

Z80 file compression (v2.0) for both 48k and 128k models

Fixed bug in z80 decompression algorithm

Version 13.0

New set of microspeech allophones (shorter)

Added GUI volume setting

Added Currah microspeech volume setting

SE Basic extended to all models

Wiimote button 2 as default fire

Version 12.0

Added Currah microspeech emulation

Added Fuller box sound and joystick emulation

Added ZX Interface II Rom cartridge loading support

Added support for Open SE basic ROM for 48k model

Added file management (paste, copy and delete)

Added load command for microdrive

Improved tape fast loading routine

Version 11.0

Gui interface with ZX Spectrum style and sound

Added screen preview in scr menu

Added tape settings menu

Added green color mode

Added submenu for 48k issue 2 & 3

Fixed several bugs (mainly memory leakage)

Version 10.3

Improved txz loading algorithm

Fixed small bugs on return from turbo state

Version 10.2

Fixed bug in 128k sna format

Fixed small bugs in z80 core

Fixed bugs in tape emulation (Speedlock 4-7, Softlock and Powerload work now)

Improved code and tape loading speed

Version 10

Tape browser

TZX "select block" block

TZX "jump to block" block

TZX messages shown on the screen

Instant load for TZX files too

Improved instant load routine: most of TAP files can be instant loaded now

Keys can be kept pressed in Virtual Keyboard

QAOP joystick

16 bit sound

Linear interpolation anti aliasing sound filter

Removed crackling in menu change

Mic bit emulation (Cobra's Arc speach works now)

Option to have pause between blocks in instant load

Option to disable tape rewind on reset

Option to ignore joystick configuration of z80 files

Tape stops on reset

Fixed bug in emulation precision option saving

Other minor fixings and improvements

Version 9

Virtual keyboard does not stop the emulation

Support for installation on usb device

Case insensitive file ordering

The path in file browsing is remembered

Changed layout in file selection menu

Support for Wiiflow

Option to disable Virtual keyboard rumble

Version 8

Screen snapshots visible on screen in file select menus

Option to activate the virtual keyboard with the wiimote IR pointer

Changed menu navigation rules (2 and B always come back to previuos menu)

FTP and SMP connect also after start up

Tape stops after machine selection change

Fixed contention in normal mode emulation

Fixed crackling in turbo auto mode

Other minor bug fixes

Version 7

Added auto turbo mode

Added graphical virtual keyboard using wii pointer

Added B button as escape

Fixed bug in file list management

Version 6

Added mdr and tape file creation menu

Added poke menu

Added poke file management

Added zip support and archive browsing

Added ftp client and browsing

Support for ABC/BAC/ACB stereo

Improved snow emulation

Improved speed emulation

Fixed bug in SNA format

Fixed bug in AY-3-8912 emulation

Version 5

Added precision emulation setting (floating bus, contention, interrupt timing)

Added NTSC 48K machine

Added 320X240 framebuffer resolution

New screen setting menu

Added framerate setting

Version 4

In Joypad mode, the nunchuck works now

New code for Y-3-8912 emulation

Fixed RETN and RETI Z80 instructions

Fixed Flag emulation for many Z80 opcodes: Speedlock loader works now. Only the Flag in Bit n, (HL) is not correctly emulated.

Version 3

Added arrows keys binding to joysticks

Added game configuration management

Changed general configuration management

Added ultraspeed turbo mode

Added ULA+ contention

Fixed bug in sound and increased volume

Fixed some bugs in Z80 emulation. Ant Attack works now

Fixed some other small bugs

Version 2

Added smb support

Added usb disk support

Added joypad as joystick function

Added saving of all configurations and buttons

Improved virtual keyboard

Fixed bug in sound emulation

Fixed some other small bugs

Version 1

Initial porting from FBZX of Sergio Costas





Other topics

License

FBZX Wii is GPLv3.





Thanks to