Skip to content
View acwright's full-sized avatar

Highlights

  • Pro

Organizations

@infinitetoken @urbanfinch

Block or report acwright

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
acwright/README.md

A.C. Wright

A.C. Wright

Software developer of 20+ years. These days I design, build and program 8-bit computers.

The project I'm currently working on is the AC6502, a family of homebrew 6502 computers. The rest of this account is a mix of retro computing, Swift and SwiftUI examples, and other projects.

The AC6502

The AC6502 family is five computers built around the 65C02. Every machine is open source, including the schematics, Gerbers, bills of materials and firmware, so you have everything you need to build your own. If you would rather not build one, the emulator runs the whole family in your browser. The user's and programmer's guide explains how to use and program each machine.

The AC6502 Machines

6502-ACE All-in-one Computer Experience — the whole family on a single board: 65C02, VGA video, SID audio, storage, serial, GPIO and a real-time clock
6502-KIM Keypad Input Monitor — a 65C02, a 24-key pad, a 16×2 LCD and eight LEDs. Boots into a hex monitor
6502-DEV Development Environment Vehicle — a Teensy 4.1 stands in for the CPU, with run/stop, single-step and a clock you can slow to a crawl
6502-COB Computer on a Backplane — the modular desktop: card slots, up to 544KB of RAM, and a card for every peripheral
6502-VCS Video Computer System — the console of the family: ROM cartridges, VGA out, SID sound and 2600-compatible joysticks

AC6502 Firmware, Emulators & Tools

6502-DOCS The user's and programmer's guide for the AC6502 family
6502-BIOS The 32KB ROM every machine boots: the Kernal, the Monitor and BASIC. It probes the I/O slots, so missing cards are simply skipped
6502-EMULATOR The family, emulated — cycle-accurate 65C02, TMS9918 video, SID audio. Browser or desktop
6502-KIMULATOR The KIM in particular — pad, LCD and the eight LEDs on the bus. Browser or desktop
6502-PICOCALC The whole machine as one .uf2 for the ClockworkPi PicoCalc — a handheld AC6502
6502-ASM Assembly programs for the family, each with a Makefile
6502-PRG / 6502-CRT Templates to start from — a program that loads into RAM, or a cartridge that overlays ROM
bin2woz Binary → WozMon deposits, to paste into a machine over a serial terminal
cffs Build and edit CompactFlash images from the command line — up to 256 disk banks
VT-AC A VT terminal that could have existed but didn't — VT-100 compatible, with 256 colours and a graphics mode. Desktop, web and CLI
TMS9918-EDITOR Character and screen editor for the TMS9918 VDP

Retro Computing

APL1 A homebrew Apple 1 replica — 6502, 65C21 PIA and WozMon, with a microcontroller terminal adding PS/2 and serial
WIZARDSLAB A falling-block match-three game for the AC6502, the Commodore VIC-20 and the Commodore 64
KEY2USB A Commodore 64 / C128 expansion port cartridge to USB HID keyboard
VIC-20 / APPLE-I Assembly language programs for the VIC-20 and the Apple I
VIC-EDITOR Character and screen editor for the VIC-20
Chip8Kit A Swift package for interpreting CHIP-8 ROMs
PICO-8 My PICO-8 games and demos

Swift & SwiftUI

SwiftUIMenuBar A tutorial for creating a menu bar application in SwiftUI
ImportExport Importing and exporting files with SwiftUI
DocExample Using ReferenceFileDocument in SwiftUI
StoryboardBindingsExample Binding data across multiple scenes in macOS storyboards

Contact & Elsewhere

Tools of the Trade

Pinned Loading

  1. 6502-ACE 6502-ACE Public

    6502-ACE 8-Bit Retro Computer Project

    Python 12

  2. VT-AC VT-AC Public

    A fantasy VT terminal — desktop app, web app, and CLI. VT-100/ANSI or its own protocol, over a serial port.

    TypeScript 3

  3. 6502-EMULATOR 6502-EMULATOR Public

    Emulator for the AC6502 family of computers

    TypeScript 10

  4. TMS9918-EDITOR TMS9918-EDITOR Public

    Character & screen editor for the TMS9918 VDP

    TypeScript 2

  5. 6502-BIOS 6502-BIOS Public

    BIOS ROM for the AC6502 family of computers

    Assembly 8

  6. APL1 APL1 Public

    A homebrew Apple 1 replica

    Vue 1