Table of Contents
Quick start guide
The V6Z80P system, as supplied, comprises of 3 main elements:
- The PCB itself, this is the actual “V6Z80P”.
- The default hardware design for the FPGA called “OSCA” (Old School Computer Architecture)
- A simple command line operating system called “FLOS” (Freezer-Like Operating System)
The PCB requires a 7.5 volt (or 9 volt max) DC regulated mains adapter capable of delivering around 1 Amp or more. The jack plug should be 2.1mm type, centre-pin positive.
As a minimum, connect power, PS2 keyboard, video/audio cables, make sure the VGA-mode jumper is installed if using PC Monitor for display, the JTAG jumpers (J1 and J2) should be uninstalled for normal EEPROM configuration. (If you have a V6Z80P plus v1.1 board, the OSC SEL switch should be in the down position)
Format an SD card to FAT16 (the card needs to be between 32MB and 2GB, please use a good brand to ensure compatibility). Extract the contents of the “V6_SD_Card.rar” file from the main project archive to the card (the *.OSF file should end up in the root dir of the card) and insert into the V6Z80P's card slot.
Switch on the V6Z80P with the switch near the DC power socket. The yellow LED should light up, the boot-up display appears on screen and afterwards the OS loads and starts up.
? for a list of internal commands.
You can load user programs from the SD card (use the command line to navigate similar to how you would in DOS) or download them into memory via serial link from a Windows PC using the serial_link cable and utility provided. Most of the demos etc can be quit by pressing the ESC key.
Quick Example using serial link
With the V6Z80P powered off, connect the serial link cable to the PC. On the PC under Windows, load the serial comm link util (in \PC_based_apps) and set to the COM port to that which you have the V6Z80P connected to. Power on the V6Z80P.
Under FLOS, type:
RX * 5000 (meaning “receive any file and load to $5000”) then Enter.
At the PC, click “send file” and browse to “hello_w.exe” (in \FLOS_based_programs\simple_examples\hello_world) - click OK. The file should download and FLOS report “n bytes received” (the serial download will time out after a few seconds of waiting, if that happens just cursor up to the command you previously typed and press Enter again and resend.)
To run the program, type:
G 5000 (Enter)
- The command “RX !” performs the above in a single step
- You can send multiple files and have them save directly to the SD card with the FLOS “sercopy.exe” utility.)
Other brief info
An offline version of these docs including OSCA hardware manual is in the folder “Documentation” in the full project archive.
The V6Z80P's EEPROM can hold three (or more, depending on the EEPROM type used) FPGA configurations. The first 7 can be selected with Keys F1-F7 on the boot screen, or from FLOS with the “BOOT n” command (where n is the slot number to reconfigure from).
As supplied, OSCA for 50Hz PAL TVs (or VGA monitors) is in EEPROM Slot 1, OSCA for 60Hz NTSC TVs (or VGA monitors) is in Slot 2. On power-up, the FPGA configures from whichever is the “Power-on Boot Slot” - this will be set at Slot 1 or Slot 2 depending on the location the board was dispatched to.
Cycle-perfect Spectrum Emulator: Alessandro Dorigatti’s Spectrum 48, 128 and Pentagon 128 emulators are in slots 3, 4 and 5 respectively. To use these configurations, enter the FLOS command “EMU” and follow the prompts. (The first time you run an emulator you’ll need to tell the program which EEPROM slot contains its config file - EMU will suggest a likely Slot.) Full documentation for these emulators is provided in the folder “Alternative Configs/Alessandro” (Note: Using EMU does not affect the V6Z80P’s power-on slot.)
The slots can be updated with new confgurations by using the tool EEPROM.EXE (care is advised!)
For stability, avoid connecting or disconnecting peripherals to the V6Z80P whilst the power is switched on.
FLOS cannot automatically recognize card swaps so any card inserted whilst the power is on needs to be initialized with the “MOUNT” command.
If your PC doesn't have a (free) serial port, a USB→RS232 cable/adapter should work - please ensure you use its latest drivers to avoid problems.
Occasionally, the first time the serial link util is used, the first file transfer fails with a “bad acknowledge” report. (I've yet to find out exactly why..)
About the various connectors
On the original V6Z80P the video connector is an 8-pin mini-DIN socket, with a custom pin-out (see documentation for diagram). On the V6Z80P+ the video socket is standard DB15 VGA socket. Output is RGB+sync type and OSCA supports PAL (50Hz) and NTSC (60Hz) TVs, and VGA 60Hz (+50Hz non-standard) PC monitor timing. The VGA jumper (see 10 pin header) should be installed for VGA output and removed for TV output.
The RS232 serial connector is a 4 pin mini-Din connector (3 pin on V6Z80P+ v1.0). Only RX, TX and Ground are connected - the pin-outs are custom to the V6Z80P (see physical hardware section of docs for diagrams).
Joystick ports are standard Atari/Amiga style. 2 buttons supported. Megadrive pad support can be achieved on the original V6Z80P with a small, simple PCB modification (megadrive pad support is standard on V6Z80P+ onwards)
Mouse / Keyboard connectors are standard PC-compatible PS/2 6-pin mini DINs.
The audio socket is a standard 3.5mm stereo jack socket.
The SD card slot accepts MMC or SD cards (the code does not as yet support SDHC cards)