31 lines
1.8 KiB
Markdown
31 lines
1.8 KiB
Markdown
---
|
|
layout: page
|
|
title: Challenger 1P Programming Guides/Samples
|
|
permalink: /pubs/c1p/programming/
|
|
---
|
|
|
|
Challenger 1P Programming Guides
|
|
---
|
|
|
|
Challenger 1P Programming Samples
|
|
---
|
|
|
|
### 6502 ASSEMBLER/DISASSEMBLER
|
|
|
|
This "source code listing" from June 19, 1980 is for the first piece of software I sold, right around the
|
|
time I graduated from high school. I had had my Ohio Scientific Challenger 1P for maybe a year when I decided
|
|
to write something that would make it easier to write "machine language" programs than the incredibly tedious
|
|
HEX monitor that was built into the C1P. And so my **6502 ASSEMBLER/DISASSEMBLER** was born, with full-screen
|
|
editor, assembler, and disassembler.
|
|
|
|
One of the conditions of the sale, however, was that I provide a "source code" listing. I don't think the buyer
|
|
understood that I had essentially written the program in machine language -- because that's how I had to enter it
|
|
into the machine. Maybe *some* lucky C1P users had disk drives and editors and assemblers, but I had none of those
|
|
of things. I had never even used tools like that before, which is why the **6502 ASSEMBLER/DISASSEMBLER** is a
|
|
bit of an odd duck. I'll post some screenshots and a demo eventually, and you'll see what I mean.
|
|
|
|
Anyway, to satisfy the buyer, I sat down at my old manual typewriter and banged out my version of a "source
|
|
code" listing. I produced it mostly by using the program to disassemble itself, combined with information
|
|
from hand-written notes (which I may still have somewhere). Here it is, many decades later, for your amusement.
|
|
|
|
[<img src="http://archive.pcjs.org/pubs/c1p/programming/thumbs/OSI_Assembler-Disassembler_Listing-thumb.jpg" width="200" height="260" alt="6502 Disassembler Listing (by Jeff Parsons, June 1980)"/>](http://archive.pcjs.org/pubs/c1p/programming/pdfs/OSI_Assembler-Disassembler_Listing.pdf)
|