Assemblers/Disassemblers for retro processors (Z80, 6502, 6809, etc)
Project description
Opcode Tools
Known CPUs
- 6502
- 6803
- 6809
- 8052
- DVG (Atari vector generator used in OmegaRace, Asteroids, etc)
- Z80
- Z80GB (Z80 variant used in the Nintendo GameBoy)
Disassembler
py -m opcodetools.dasm Z80 0 "test1.bin+test2.bin"
- CPU
- Origin
- One or more files that make up the binary
Assembler
py -m opcodetools.asm hello.asm
See the Example Input below.
The assembler recognizes four different kinds of text lines:
- A blank line (ignored)
- A label: a single word/number ending with a ":"
- A directive: a line beginning with a "."
- Everything else is a line of assembly opcodes
Comments
LD A,5 ; Five rows per object
Everything after a ";" on a line is ignored as a comment. Lines that begin with a ";" are seen as blank lines (ignored).
Includes
.include hardware.asm
Key/Value Constants
._CPU = Z80
.CONST_A = 0x20
KEY = VALUE pairs. Keys that begin with "_" are meant for the assembler.
Data Definition
Bytes
. 0x01,2,3,4,0x05
Words
.word 0x01,0x1234
Example Input
; Example assembly input
.include hardware.asm
._CPU = Z80
.CONST_A = 0x20
0x8000:
Start:
LD A,0x23 ; constant
LD A,(0x10) ; memory location
LD HL,(DataB) ; memory location
LD HL,DataA ; constant
LD E,CONST_A ; constant
JP Start
DataA:
. 0x10,0x20,0x30
DataB:
. 0x40,0x50
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file opcodetools-1.4.tar.gz.
File metadata
- Download URL: opcodetools-1.4.tar.gz
- Upload date:
- Size: 32.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1e84a7225a8af812c06cf1f8944e6458b5a981b823d1532027e82c56f0301e6c
|
|
| MD5 |
a53fb6b609a581a58e0d9b9669cba592
|
|
| BLAKE2b-256 |
f6b93e08c5a6460e24e65e843cb76c52b07fef66c8f4b357c72fe896b810f31f
|
File details
Details for the file opcodetools-1.4-py3-none-any.whl.
File metadata
- Download URL: opcodetools-1.4-py3-none-any.whl
- Upload date:
- Size: 36.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
92e4706b649c5b4064ee6d8388d5471fab25e4b27b9b4076a4e8702b3c11e7d1
|
|
| MD5 |
eec8bb95106433a17148fc1c7d854914
|
|
| BLAKE2b-256 |
0fd0c0b217b67fa0cd38e04deec29665ac7dad8aeb179c535b1d6bbf540eb2cb
|