Useful_Links


Here we'll note some of the URLs we've found while working on this project that may come in useful later...

Vectrex and 6522 description outlink More 6522 info outlink

GPIO to keyboard driver outlink - although we will primarily be using the Vectrex controller for input, we can imagine that some users will want to wire up their own custom controllers outlink to the Pi's GPIOs. This code from Adafruit shows how to map a GPIO signal to a keyboard press. Of course there are also many USB I/O devices as well that won't need to use any of the few remaining free (and hard to get physical access to) GPIO pins.

Bare metal Z80 emulator outlink - Probably never necessary, but if we wanted to create an environment where the PiTrex boots up fast and acts like a Vectrex, this bare-metal z80 emulator might give some good hints as to how to implement something like that. An emulator really doesn't need any of the overhead of an O/S - just somewhere to read files from and screen+I/O which in our case is done by direct access to the Vectrex. (Other bare metal resources: C64 outlink everything at github outlink C outlink Bare metal USB stack outlink asm outlink booting outlink metalpi outlink Pi3 bare metal C outlink Alloy: multicore - bare metal plus linux outlink config for Alloy outlink ChibiOS RT - getting started tutorial outlink Circle outlink

High resolution timers outlink nanosleep outlink more precise timers outlink - info that we may need when duplicating any cycle-exact timing from the 6809

How to configure CPU pinning without use of isolcpus kernel cmdline parameter outlink - on the subject of reserving a CPU for dedicated access with no operating system overhead. Although we probably will need the kernel command line 'isolcpus outlink' parameter, which is covered in several of the 'bare metal' links).

Pi: device trees and parameters outlink bcm2835 - GPIO register access from C outlink more GPIO bitbanging outlink Connecting a joystick outlink Readig joystick values into a C program outlink, General collection of Raspberry Pi links outlink

Vectrex sound generator outlink

Datasheets
CPU: MC68A09 outlink
VIA: R6522 outlink MOS6522 outlink sy6522 outlink
PSG: AY3-8912 outlink Microchip AY3-8912 Datasheet outlink
DAC: MC1408-8 outlink
Analogue Switch: 4052B outlink

GPIO Hardware characteristics: Official Raspberry Pi Document outlink, More detail on BCM2835 electrical specifications outlink
Lots of Raspberry Pi hardware info outlink - GPIO Code Samples outlink

PSG info and manuals to download outlink More documents also software and chiptunes outlink

Vector output from MAME used with custom DAC board to control Vectrex and oscilloscope outlink

LaserMAME outlink - Vector arcade games projected with lasers.

OpenLASE library for displaying computer graphics with laser projectors outlink - Inc. SVG, Bitmap display and video-player. Uses a PC sound card as the DAC. openlase-mame outlink.

Vector arcade games:
Andys Arcade outlink
Incomplete vector games category at Wikipedia outlink
GameArchive outlink

Raspberry Pi High Speed I/O Under Linux:
DMA (mainly useful for repeating signals?):
Raspberry Pi DMA Example outlink

Some hints about driving GPIOs from a kernel module outlink, A very basic example outlink.

Real-Time Linux:
PREEMPT_RT outlink
Debian based distro with PREEMPT_RT patch outlink
Xenomai
RTAI

Similar Raspberry Pi Interface Projects:
These are generally designed to work in combination with the original CPU using some form of bus, of which there isn't an equivalent on the Vectrex. However there may be some general hints to take with regards to presentation, documentation, and interfacing with the Raspberry Pi:

  • PiTubeDirect outlink - Interface for the BBC Micro using its "Tube" interface for adding a co-processor.
  • Apple2Pi outlink - Connects a Raspberry Pi to an Apple II using a serial bus and runs an Apple II emulator on the Pi which can access the physical Apple II hardware and peripherals (conceptually a little like the VecFever, though just a little). FAQ outlink, Store outlink