RETRO PROJECT / PDS6502.COM

PDS 6502.
In a browser.

This is a retro-computing project to build a web-based PDS6502 assembler/compiler environment for the Commodore 64. The idea is simple: edit 6502 source in the browser, assemble it, inspect what came out and run it on a C64.

TARGETCOMMODORE 64
CPUMOS 6502
STATUSIN DEVELOPMENT
Commodore 64 computer photographed on a white background
READY.
38911 BASIC BYTES FREE
$0801
LOAD ADDRESS
THE TARGET MACHINE / 1982
6502 ASSEMBLYPDS HERITAGEC64 DEVELOPMENTBROWSER TOOLCHAIN6502 ASSEMBLYPDS HERITAGEC64 DEVELOPMENTBROWSER TOOLCHAIN
01

THE PROJECT

What this site
is about.

PDS was a professional cross-development system. You wrote and assembled the code on the host machine, then sent it to the target and debugged it there. For 6502 work that meant fast edit / assemble / test cycles without having to develop entirely on the 8-bit machine.

PDS6502.com is an attempt to recreate that sort of workflow in a browser for the C64. It is not intended to hide the hardware. Addresses, bytes, symbols, load locations and the generated machine code should all remain visible.

PDS HERITAGE

PC host.
C64 target.

The original idea was straightforward: use a more capable machine for editing, assembling and debugging, while the 6502 machine remained the target. Here, the browser takes the place of the host side and the Commodore 64 remains the machine we are interested in.

+ Edit. Assemble. Load. Run. Debug.
PDS 6502 / WEB BUILD
; PDS6502.COM — WEB CROSS DEVELOPMENT

        ORG     $0801
START   SEI
        LDA     #$00
        STA     $D020
        STA     $D021
        CLI

LOOP    INC     $D020
        JMP     LOOP

BUILD   $0801 - $0811   17 BYTES
OK      0 ERRORS / 0 WARNINGS
Open Commodore 1541 floppy drive showing the internal mechanism
01 / HARDWARE Commodore 1541, opened up
Vintage MOS MCS6502 processor in a ceramic package
02 / SILICON MOS MCS6502
02

CURRENT JOB LIST

Things that need
to work.

02

6502 assembler core

6502 opcodes, labels, symbols, expressions, PDS-compatible directives where practical, and predictable machine-code output.

PLANNED
03

PRG output

Produce C64 PRG files with the correct load address so a build can be dropped straight into an emulator or transferred to real hardware.

PLANNED
04

Symbols & diagnostics

Listings, symbol tables and errors that show exactly where the assembler got upset and what bytes were generated.

PLANNED
05

Memory & monitor tools

Inspect memory, addresses, registers, assembled output and symbols without turning it into a modern IDE debugger.

PLANNED
06

C64 integration

Assemble, load and run on an embedded C64 emulator first, with real-machine transfer options considered later.

PLANNED
Historic MOS Technology 6502 instruction set sheet

6502

There are only
so many opcodes.

The useful part of 6502 programming is that very little is hidden. A, X and Y are right there. Zero page matters. Page crossings matter. The stack is tiny. PDS6502 will keep those details in view instead of pretending the target is something it is not.

AXYSPPCP
PDS / 6502

6502
Assembler
& Monitor

manual

A9 00 8D 20 D0
4C 06 08

THE ORIGINAL MANUAL

The original
manual.

A scan of the PDS 6502 Assembler & Monitor manual survives online. It is useful reference material for the assembler syntax, expressions, directives and monitor commands, and it will help guide compatibility work on this project.

Open the surviving manual Cover shown here is a visual recreation, not a scan of the original manual.
Commodore 1541 motherboard with integrated circuits visible
03 / BOARD LEVEL 8-bit engineering, exposed

CURRENT TARGET

C64
CPU    6510 / 6502 code LOAD   $0801 and wherever you tell it OUTPUT  PRG + symbols + listing HOST   your browser

No cloud build farm. No framework. Just source in, bytes out.

PDS6502.COM

Work in progress.

There is nothing to download yet. The assembler, editor and C64 workflow are being built now. This page will turn into the actual tool as the useful parts come online.