Updated notes on 6502 assembler
This commit is contained in:
parent
ba2e525982
commit
603b429c60
5 changed files with 32 additions and 14 deletions
|
|
@ -1,10 +1,10 @@
|
|||
---
|
||||
layout: page
|
||||
title: Challenger 1P Machine-Language (6502) Applications
|
||||
title: Challenger 1P Machine-Language Applications
|
||||
permalink: /apps/c1p/6502/
|
||||
---
|
||||
|
||||
Challenger 1P Machine-Language (6502) Applications
|
||||
Challenger 1P Machine-Language Applications
|
||||
---
|
||||
|
||||
The project contains the following 6502 machine-language tests:
|
||||
|
|
|
|||
|
|
@ -1,10 +1,10 @@
|
|||
---
|
||||
layout: page
|
||||
title: Challenger 1P Machine-Language (6502) Programs
|
||||
title: Challenger 1P Machine-Language Programs
|
||||
permalink: /apps/c1p/6502/jeffpar/
|
||||
---
|
||||
|
||||
Challenger 1P Machine-Language (6502) Programs
|
||||
Challenger 1P Machine-Language Programs
|
||||
---
|
||||
|
||||
The project contains the following 6502 machine-language programs written by [Jeff Parsons](https://twitter.com/jeffpar)
|
||||
|
|
|
|||
|
|
@ -6,23 +6,36 @@ redirect_from:
|
|||
- /pubs/c1p/programming/
|
||||
---
|
||||
|
||||
6502 ASSEMBLER/DISASSEMBLER
|
||||
6502 Assembler/Disassembler
|
||||
---
|
||||
By Jeff Parsons
|
||||
|
||||
This "source code listing" from June 19, 1980 is for the first piece of software I sold, right around the
|
||||
The "source code" listing below 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.
|
||||
HEX monitor that was built into the C1P. And so my [6502 Assembler/Disassembler](ASSEMBLER-4K.json) was born,
|
||||
with full-screen editor, assembler, and disassembler.
|
||||
|
||||
There were two versions, one for each of the standard Challenger 1P memory configurations:
|
||||
|
||||
- [6502 Assembler/Disassembler for 4K C1P](ASSEMBLER-4K.json)
|
||||
- [6502 Assembler/Disassembler for 8K C1P](ASSEMBLER-8K.json)
|
||||
|
||||
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.
|
||||
of things. I had never even used tools like that before, which is why the [6502 Assembler/Disassembler](ASSEMBLER-4K.json)
|
||||
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.
|
||||
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/apps/c1p/6502/jeffpar/assembler/thumbs/OSI_Assembler-Disassembler_Listing-thumb.jpg" width="200" height="260" alt="6502 Disassembler Listing (by Jeff Parsons, June 1980)"/>](http://archive.pcjs.org/apps/c1p/6502/jeffpar/assembler/pdfs/OSI_Assembler-Disassembler_Listing.pdf)
|
||||
|
||||
NOTE: Even though the "source code" listing was based on the 8K version, it more closely resembles the
|
||||
[4K version](ASSEMBLER-4K.json), because the [8K version](ASSEMBLER-8K.json) I originally located appears to be
|
||||
an older vintage (4/1980 instead of 6/1980, if the embedded dates are correct). However, even the 4K version
|
||||
probably doesn't align perfectly with the listing, because it appears to be *newer* than the listing (9/1980).
|
||||
|
|
|
|||
|
|
@ -15,4 +15,9 @@ Here are some sample C1P Machine Configurations:
|
|||
* [8kb "Server Array" Demo](8kb/array/)
|
||||
* [32kb with Diskette Support](32kb/)
|
||||
|
||||
See the [C1Pjs Documentation](/docs/c1pjs/) for operational details of our Challenger 1P emulator.
|
||||
See the [C1Pjs Documentation](/docs/c1pjs/) for operational details of the emulator.
|
||||
|
||||
Browse our collection of [Challenger 1P Applications](/apps/c1p/), which come in two flavors:
|
||||
|
||||
- [BASIC](/apps/c1p/BASIC/)
|
||||
- [6502 Machine-Language](/apps/c1p/6502/)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ Our [Publication Archive](/pubs/) includes these PC-related resources:
|
|||
* [Reference Manuals](/pubs/pc/reference/)
|
||||
* [Software User and Development Guides](/pubs/pc/software/) (eg, [DOS](/pubs/pc/software/dos/), [OS/2](/pubs/pc/software/os2/), [Windows](/pubs/pc/software/windows/))
|
||||
|
||||
And publications related to Ohio Scientific's 6502-based Challenger 1P:
|
||||
And publications related to Ohio Scientific's 6502-based [Challenger 1P](/devices/c1p/machine/):
|
||||
|
||||
* [Datasheets](/pubs/c1p/datasheets/)
|
||||
* [Programming Guides/Samples](/pubs/c1p/programming/)
|
||||
|
|
|
|||
Loading…
Reference in a new issue