Skip to content

v1.0.0

Latest

Choose a tag to compare

@acwright acwright released this 24 Sep 14:03
· 5 commits to main since this release

The first release of 6502-PICOVDP: firmware for the AC6502's video card, a PICO9918 PRO v2.0 (RP2354A), implementing SPEC.md draft 0.5. It reports STAT5 = $10 (firmware 1.0).

This is the image proven in an AC6502 ACE in Phase 14, at both 1 MHz and 2 MHz and under BIOS 1.6 and BIOS 2.0: see docs/results/phase-14.md.

Firmware: picovdp-v1.0.0.uf2, the pro-release build.
SHA-256 0b74cd9875cbffc46de7ec48a9bb6e0d4a76a3e796d2563615e17e6bed94afd5

Before you flash

  • Fit the MDE1 pin. Solder one 0.1″ male header pin into the PRO's bare MDE1 pad (the TMS9918's pin 11 position). Without it, the card's second port pair, $9C02/$9C03, can't be reached.
  • The PRO drives /INT push-pull. On the ACE, /INT shares IRQB with the VIA and the ACIA, and needs a Schottky diode (BAT85, cathode toward the card) or keyboard and serial input stop working. See 6502-ACE's TODO.md.
  • Back up the stock firmware if you may want it again: hold BOOT while connecting USB-C, then picotool save -a stock.bin.

Flashing

Hold the PRO's BOOT button while connecting its USB-C to your computer, then:

picotool load -v -x -f picovdp-v1.0.0.uf2

A release build has no USB link of its own, so every later update needs the BOOT button again. To build it yourself: cmake --preset pro-release && cmake --build --preset pro-release (see the README).

Checking it from BASIC

On BIOS 2.0 the boot header's hardware line ends in VDP, and PRINT VSTAT(4);VSTAT(5);VSTAT(6) prints 172 16 191. To check port B, and so the MDE1 pin:

POKE 39939,4:POKE 39939,142:PRINT PEEK(39939):POKE 39939,0:POKE 39939,142

prints 172.