home | links
THE LINKS MINE
Major features on this website:
(and three more very major features are planned, plus several smaller ones, but it all takes so much time!)
- 6502 stacks treatise 6502 Stacks: More than you thought! This is
actually a set of 19 articles plus appendices. Added 10/1/15.
- NMOS v. CMOS 6502 differences Added 7/15/15.
- Assembly Language: Still Relevant Today (article) Added 6/9/15.
- zero-overhead forth interrupt service on 6502, which I got
published in the Jul/Aug 1994 issue of Forth Dimensions magazine, V16N2, then revised it Dec 2003
(and will remain there), but copied it to here partly for ease of editing, on 2/21/15.
- 6502 interrupts primer. I put in
on 6502.org 12 years earlier, and it will remain there too; but this
one has a load of teensy improvements (as it's so much easier to edit on my own site). Added 2/17/15.
- simple methods for multitasking without a multitasking OS, for systems that lack the resources for a
multitasking OS, or where hard realtime requirements might rule one out anyway. Added 5/16/14.
- program structures in 65c02 assembly, through macros, yielding benefits of higher-level
languages without robbing any of the efficiency or control of assembly. Added 7/28/12.
- Large look-up tables for hyperfast, accurate 16-Bit scaled-integer math, including trig &
log functions. You can probably implement them even if your computer is already built up, the address space is full,
and your I/O is almost all taken. See how. Added 6/25/12.
- 6502 PRIMER: Building your own 6502 computer (Many of the 22 chapters apply equally to other
computers as well.) Added 4/27/12.
- RS-232 primer Added 4/5/12.
list of 75 of just my own articles, on this site and others
Links categories on this page:
Why use the 6502? (2-page forum topic, with links to more) It
has great strengths that don't initially meet the eye!
65816 origins, 6516, 65032, 65832
65CE02 improvements over the 65c02 Original Commodore 65CE02
data sheet is here (.pdf)
6516 (Synertek) 16-bit pseudo-6502 for Atari 400/800 computers, never made it to market
65020 double-wide 6502 proposal
6502EX (6502 extended to 32 bits)
65Org32 developments of ideas for an all-32-bit 65816 extension (forum topic)
Silicon Genesis interviews: Bill Mensch, inventor of the 65c02 and 65816 (about 40% of the way down the page)
Bill Mensch interview Aug 2015 on 6502 and '816, and comparing them to
ARM, 68000, x86, 6800, 6501, etc. and his business model, and his goals.&nbps; He obviously has a very clear vision, and he's accomplishing what he wants. Still. Today.
David Cramer interview (VP
of business dev at WDC) Mar 2015. He says there are hundreds of different products being made today with 65xx processors in them.
Chuck Peddle gives reasons for design decisions on the 6502
6502 emulation with an ARM
6502 emulation with an AVR by Daryl Rictor
6502 emulation with an ATMega16 by Klaus Dormann (See also
this forum topic.)
Daryl Rictor's 65802 module, a hybrid using a 65816 and other ICs to plug into a 6502
socket like WDC's no-longer-available 65802. The forum topic that goes with it is here.
How 6502 illegal op codes really work
More on illegal op codes
Yet more on illegal op codes
x7 and xF illegal op codes article from Byte magazine, Dec '77
visual6502 wiki page on illegal op codes
Rob Finch's bc6502 verilog 6502 source (Note: This finitron
website is his newer one, but the file dates are older than what's in the archive.org URL linked in the 65xx HDL page linked above.)
links to 18 free HDL 65xx cores
comparison of many HDL 6502 cores available (forum topic, with links)
BMOW tiny 6502-like CPU in CPLD
programmable-logic basics: free online course
For 65-family peripherals made with programmable logic, see the next section below, "65-family peripheral ICs."
KimKlone 6502 w/ pointer-arithmetic-friendly extended address space and 9-cycle ITC Forth NEXT
Build your own 6502 with TTL by Ruud Baltissen
6502 ALU using 74xx logic (minus BCD), by someone called "latebit"
Western Design Center (WDC) is the main 65c02/816/134/265 manufacturer today.
Jeff Laughton's improved to-scale timing diagrams for 14MHz 65816,
including for understanding to help prevent bus contention at changes in data direction which can happen twice per '816 clock cycle.
animated visualizations of timing margins These excellent, drawn-to-scale (unlike most in data sheets) .gif's help understand what timings
are constant and what varies with clock speed. Discussion about them is in the forum
my "Tip of the Day" column for 6502 development has many tips on using the 6522 VIA and 6551 ACIA
Daryl Rictor's 65SPI IC he sells. It is a 65-family I/O IC to multiple SPI devices.
6581 SID emulator in Atmega8
SwinSID 6581 emulator in 32-bit ARM Cortex running at 80MHz (There are different versions there.)
Papilio Duo C64SID SID in FPGA
6502.org's datasheet index
data sheets to lots of less-common 65-family peripheral ICs (Rich Cini's site)
Western Design Center (WDC) is the main 65c21/22/51 manufacturer today.
Jeff Laughton's unconventional circuit tricks for
ultra-fast (single-cycle!) I/O using 65c02 illegal op codes in the _3 and _B columns, plus re-mapping op codes (This is in the circuit
potpourri page of my 6502 primer.)
digital audio plug-in modules for Commodore 64/128
Wishbone computer bus
concise comparison of synchronous-serial interface types (forum post)
I2C overview from Philips Semiconductor (.pdf)
I2CChip.com I2C, SPI, 1-Wire interfacing made easy
guide to reliable 1-Wire® networks
Microwire/Plus description from National Semi (.pdf)
B&B Electronics: serial converters
65SIB spec. (serial interface bus, compatible with SPI but more flexible)
SS22 spec. (6522 synchronous-serial data link between computers)
I2C-6: proposed connector standard for I2C, suitable for breadboarding (6502.org forum)
My RS-232 primer
SD-card SPI Maxim ap note (.pdf)
SD/MMC cards, using in SPI mode
SD/MMC/SDHC card library
Microprocessor USB project
USB/Bluetooth for Apple II
USB modules (Hobby Engineering)
MAX3421E USB peripheral/host controller IC with SPI
running the bus off the board, and interfacing external boards and devices
(See also the assemblers and Forth sections further down)
Large look-up tables for super fast, accurate, 16-Bit scaled-integer math (like having a coprocessor)
6502.org wiki (math, utility routines, datasheet errata, etc.)
source code on 6502.org, in various categories
tutorials and primers on 6502.org
Omegamatrix's fast, short division routines to divide an 8-bit
number by any number up to 32
Lots of 6502 books, including for programming, scanned and
available for download. See especially under "Programming", starting about 70% of the way down the page and going to the end. I
have a few of those in paper.
André Fachat's context Switching and thread synchronization on a 6502
André Fachat's GeckOS/A65 V2.0, a full-featured Multitasking/Multithreading
OS for the 6502. It is preemptive and implements some Unix-like features, like signals, semaphores, relocatable file format, standard library,
internet support via simplified sockets, and virtual consoles.
Jon's preemptive multitasking GUI OS for Atari 6502 computers
operating-system wiki (OSDev.org)
Taygeta C64 Forths
Forth processors (stack computers)
EhBASIC by Lee
Davison. An outstanding interpreted BASIC for 6502. Note: If that link doesn't work, try
this one. Unfortunately
Lee passed away, in 2013.
Create your own version of MS BASIC for 6502
Microsoft BASIC for 6502 Original Source Code (1978)
Steve Wozniak's Sweet16
cc65 wiki. cc65 is a 6502 C compiler and supporting software.
high-speed function approximator using Minimax quadratic
HAKMEM programming tricks (math, algorithms)
many math routines in 6502 assembly on the Codebase 64 wiki
Codebase 64: Commodore 64 source code, articles, tutorials
CORDIC algorithms for FPGA-based computers (.pdf)
(this link has the same article)
IEEE floating-point standard (.pdf)
IEEE-754 floating-point standard for arithmetic (Wikipedia)
IEEE floating-point conversion page
6502 BCD floating-point scientific math package, 12-digit plus 3-digit exp, up to
AWC Electronics math coprocessors, 32-bit floating-point, serial-interfaced
Micromega Corporation math coprocessors, 32- and 64-bit floating-point,
BDD's 65816 string-manipulation library
BDD's Supermon 816 machine-language monitor for the
65816 (Also at this forum topic.)
Program-Writing: Where Do I Start? (section 18 of
the 6502 primer)
Tips For Programming the 65(c)02 (sometimes affecting hardware design
optimization) (section 20 of the 6502 primer)
my program structures in 65c02 assembly, through macros (for PIC16 also)
simple methods for multitasking without a multitasking OS, for systems that lack
the resources for a multitasking OS, or where hard realtime requirements would rule one out anyway
programmers' articles about memory
6502 v. 65816 code length comparison
6502 v. PIC16 code length comparisons (remove the "&start=5"
to see the beginning of the topic)
"Programming the 65816—Including the 6502, 65C02 and 65802"
6502/65816 programmer's manual by David Eyes and Ron Lichty. The best! From Western Design Center. (.pdf) Note: There
were many problems with the earlier .pdf version that were not in the original paper manual; but in late March 2015, WDC scanned and OCR'ed
the paper manual and posted the new, repaired .pdf.
65816 free assemblers
lots of 6502/816 assemblers, disassemblers, C compilers, simulators, & related tools
Andrew Jacobs' As65 assembler which has program-structure capability built in
Anton Treuenfels' HXA 6502 assembler which also has program-structure capability built in
P65 portable 6502 assembler
64tass powerful macro assembler and linker for 6502, 65C02, R65C02, W65C02, 65CE02, 65816, DTV, & 65EL02, from soci
Cross-32 (C32) assembler (which I use) formerly from Universal Cross Assemblers, now sold by Data Sync
Engineering. Also available at http://www.mpeforth.com/cross32.htm.
2500AD assembler is now being sold by Avocet Systems. This assembler is not cheap, and Avocet apparently gives little or no support—just the software and manuals on CD ROM—so I wouldn't recommend it to a newcomer. But if there's a reason you really must have this one, it was a very good one back when I was using it in the 1980's, and is undoubtedly quite stable.
Merlin 32 modern cross-assembler, linker, disassembler, simulator, and more, for 6502, 65c02, 65816, for Apple IIgs and others, by Antoine Vignau and Olivier Zardini
MADS multi-pass crossassembler for 6502 and 65816. (This page is mostly in Polish,
but important stuff is available in English through the links in the top-right corner.) Binaries are generated mainly for Atari 8-bit
systems (supported are AtariDosII and SpartaDOS X formats).
Assemblers And Loaders 1993 book by David Salomon on how to write them. 294 pages. Available for free download. (Not 6502-specific.)
BDD's macros for assembling 65816 code on Kowalski's 6502 assembler
Apple II original ROM info,
ROM listing, Sweet 16, monitor, floating point, articles, plus SYM and AIM monitors, and AIM BASIC ref manual. 257 pages.
eBook: "What's Where in the Apple" 400-page Apple II resource which had been out of print since '84
SD card "drive" for Apple II on Hack-a-Day
Apple IIgs programmers' home
loads and loads of scanned Apple II books
"Apple Assembly Line" archived issues, 1980-88
APE Atari pages
Trevin Beattie's Atari Technical Information page
loads and loads of scanned Atari books
Zimmer's Commodore pages
"The Fridge" source code programmers' resources for C64 and 6502
Commodore PET index
Commodore.ca All things Commodore
Dan's 8-bit Commodore Info Lots of Commodore links
Commodore disc images on CD Over 1100 disc images (D64 and ADF)
containing over 10,000 programs for C64, VIC20, Amiga, C128, and PET, many of them originals published by TPUG, plus historical photos, emulators, and the
library catalogs in PDF format.
Commodore 1541 floppy-disc drive ROM disassembly
modern products for C64 from NKC Electronics
C-One FPGA-based enhance adaptation of the Commodore 64
Codebase 64 wiki C64 source code, articles, tutorials, magazines, books, projects, and links
Creative Micro Designs unofficial site CMD was a third-party supplier of software and hardware
for the C64, including the 20MHz 65816-based SuperCPU accelerator.
loads and loads of scanned Commodore 64 & 128 books
loads and loads of scanned manuals for Commodore 64, accessories, and software
lots of scanned Commodore PET books
Memblers' resource-rich NES page
Dave's OSI (Ohio Scientific) pages
loads of documents on AIM-65, Apple II, VIC-20, C64, Kim-1, Sym-1, others (Rich Cini's site)
Briel Computers retro computer kits: Apple, Altair, KIM, others, plus modern accessory boards
Western Design Center (WDC) makes and sells 65-family hardware (all 14MHz+) but makes most of their money licensing IP.
list of distributors
6502.org website: many homebuilt projects, primers, tutorials, books, data books, articles, magazines,
dev tools, source code, etc.
6502.org forum (lots of activity, unlike the Yahoo forums below)
6502 assembly-language programming facebook group (Consider this one
more of a chat room, since fb records are not very permanent, nor searchable, and they don't allow categories or any formatting options suitable
for code or much of anything except chats.)
6502 Yahoo forum
Apple II Yahoo forum
C64 Yahoo forum
CSDb C64 forum
OSIweb (Ohio Scientific) forum
MOS6502 on G+ weekly 6502-related posts,
curated by André Fachat and Ed Spittles (There's a post index in a 6502.org forum topic
this page for monthly summaries.
See http://6502.org/groups for 6502-related USENET newsgroups and mailing lists.
Vintage Computer Forums, including sections for Apple II,
Atari, Commodore, vintage computer programming, etc.
André Fachat, HW & OS architecture including a multitasking, multithreading 6502 OS
Daryl Rictor's 6502/816 boards, modules, and parts he sells
Sprow's MiniB BBC-Micro-based SBC
Douglas Beattie's 6502 pages
excellent visual transistor-level simulation of 6502
techniques for construction of reliable high-speed digital circuits (forum
topic, with lots of good resources)
wire-wrap Q&A (section 12 of
the 6502 primer)
raster graphics on an analog oscilloscope (involving a 6522 VIA's
shift register port)
stacking ICs to get more on a board (in the lower third of the page)
my "Tip of the Day" column for 6502 development
my article on interrupts. 6502 has outstanding interrupt performance
compared to other processors. (Enjoy my out-of-date cartoons! :) ) It's also on 6502.org,
BDD's 65816 follow-up on my 6502 article on interrupts (also posted
on 6502.org, at http://6502.org/tutorials/65c816interrupts.html)
my project pages on 6502.org. The workbench computer portion is outdated, but I want
to eventually get it all on my own site here, up to date, more complete, and with more pictures and better scans. I use my workbench computer
as kind of a Swiss army knife for the workbench.
many 6502 books and magazine articles for free download
thousands of scanned magazines, C64, Apple, other
thousands of scanned books on 6502, C64, PET, Apple, Atari, others
my slide rules I used in my early years (also slide-rule links)
Software survivalism, by Samuel Falvo (In
spite of the name, it's about hardware too.) I would like to see this way of thinking become more popular and organized.
Neo-Retro Computing, by Samuel Falvo
Low Fat Computing (A politically incorrect essay by Jeff Fox) He
and Chuck Moore (inventor of Forth), taking an entirely different programming philosophy, plus Forth hardware and software, have improved
the compactness and speed of code by factors of 100 to 1000.
ANSI Forth is anti-Forth, by Jeff Fox, agreed by
Charles Moore, inventor of Forth. See why.
Assembly Language: Still Relevant Today
Why I do this web site
Why we do 6502 (forum topic)
Things I do and don't like, relating to the computer hobbyist (You don't have to agree.)
my 32-bit DO LOOP & related words in 6502 ITC Forth
Taygeta C64 Forths
Forth processors (stack computers)
Stack Computers: The New Wave The entire book is
available to read online or to download.
Many links for stack computers and Forth material
UM* (multiplication) bug in common 6502 Forths (and my fix) Also
shows some faster variations, with code size and speed comparisons.
UM/MOD (32-bit division) bug in common 6502 Forths (and my fix)
D< bug in common Forths, plus my fix (on forum)
65c02 interrupt service in high-level Forth, with zero overhead!
KimKlone 6502 w/
pointer-arithmetic-friendly extended address space and 9-cycle ITC Forth NEXT
6502.org forum Forth topic index
Bruce Clark's 2-instruction 65816 NEXT in ITC Forth
Bruce Clark's single-instruction, 6-clock 65816 NEXT in DTC Forth
Bruce Clark explains how the faster-running STC Forth avoids the expected
memory penalties. He gives 9 reasons, starting in the middle of his long post in the middle of the page. STC of course
eliminates the need for NEXT, nest, and unnest, thus improving speed.
"Starting Forth" book by Leo Brodie, available online, somewhat
modernized, but with the original cartoons.
explanation of five different Forth threading methods, by Brad
Rodriguez. There's a list of more of his related articles at http://www.bradrodriguez.com/papers/.
See also the links in the philosophy section above.
MLDL2000 (Meindert Kuipers)
HP41CL (50 times as fast, 200+ KB of RAM, 230 modules built in, retains port compatibility) (.pdf)
Newt: 41 processor emulator (for 41CL) (.pdf)
NEWT processor and 41CL
Fix That Calc (Randy's repair service. Note that due to health problems, Randy
is no longer taking new repair jobs. Use Bruce's service below instead.)
Vintage Calculator Repair (Bruce Larrabee's repair
service) He seems to be having email problems (9/15/15), so he posted his phone number: (541)232-4793. Edit, 2/7/16:
Uh-oh, he's not answering the phone now either! See
flex-circuit replacement. There's a video showing how
to install the replacement here.
41cv coconut repair
41 service manuals download (Shucks-- just gives
a 404 now. Tell me if you know where it got moved to if it still exists.)
41 LCD pictures, for servicing
For card-reader repair, see here and
French HP-41 forum
3E0_RTN's Corner (French)
French HP-41 website
HPIL files explanation
LIF utilities for Linux
HP82161A HPIL digital cassette drive service manual
HP computer museum (Australia)
HP calculator museum
HP41.org, called TOS (for "that other site") at HP Museum
(I am a moderator on the forum)
HP-41 bar-code generation
online bar-code generator
Michael Göricke's software for generating HP-41 bar code on a PC
Forth for the HP-41 (.pdf)
here are a couple of HP Museum forum topics on Forth for the 41;
and linked there are:
this beautifully done, very clear .pdf M-code guide (in
two 70-page parts, lower page and upper page, respectively) to HP-41 Forth, done in Apr 2014, more excellent work by Ángel Martin!
Geir Isene's HP-41 pages
Matthias Werli's HP collection
Jeff's calc page
Jeff's Emu41 page
Jeff's HPIL resource page
over 200 HP-41 programs in Jean-Marc Baillard's collection
MoHPC's HP-41 software library
Math in Silicon (.pdf)
module database Also
http://hpmuseum.org/forum/attachment.php?aid=2669 (a .pdf file), updated Oct 13, 2015
Advantage ROM: Valentin Albillo's write-up (.pdf)
Ángel Martin's 41z module manual for true 4-level complex
stack and tons of complex-arithmetic functions and enhancements. Update, Apr 15, 2016: The manual on the latest version is available
Ángel Martin's Sandmath module manual with gobs
of math extensions for the HP-41
HEPAX quick-reference card (.pdf)
keyboard overlay generator
HP manuals, discussion
by Richard Nelson on p.26 (.pdf)
HP calcs wiki
How I got into HP-41
Email me at firstname.lastname@example.org if you have suggestions for additional links, corrections, or to report dead links. You can use this
email address for individual discussion too; but for forum-type discussion, use 6502.org's
forum for 6502-related discussions (Note! We absolutely do not tolerate spam!)
and HP Museum's forum or
hp41.org's forum for HP-41
discussions. HP41.org's forum is 41-specific, but it does not have much traffic at all compared to HP Museum's which is for all the
HP calculators, including ones being made today.
last updated Apr 17, 2016