Home - Chysn/VIC20-wAx2 GitHub Wiki
This is the wiki for wAx2. For the original wAx's wiki, please see https://github.com/Chysn/VIC20-wAx/wiki
Table of Contents
- About wAx
- About wAxpander
- wAx2 Tutorial
- 6502 Disassembler
- 6502 Assembler
- The Command Pointer
- BASIC Variable Substitution
- Memory Display
- Memory Editor
- Register Editor
- Go
- Breakpoint Manager
- Disk/Tape/SD Storage
- Transfer and Fill
- Search
- Compare
- Assertion Tester
- Numeric Conversion
- User Tool
- BASIC Stage Manager
Appendices
- Appendix A: wAx Error Messages
- Appendix B: wAx Memory Usage
- Appendix C: Supported "Illegal" Instructions
- Appendix D: API Routine Reference
- Appendix E: Quick Reference
Assembling wAx
The wAx source code targets the xa cross assembler (https://www.floodgap.com/retrotech/xa/). Various degrees of modifications may need to be performed to target other assemblers, especially with respect to label redefinition syntax (-loop), data pseudo-ops (.byte, etc), and sometimes (more annoyingly) case for text data.
To assemble wAx, use the following command (Linux and macOS):
xa -o wax2.bin ~/wAx2/src/wax.asm
Then, to add a location header for loading on a VIC-20, use the following command (Linux and macOS):
printf "\x00\xa0" | cat - wax2.bin > wax.prg
Then, transfer the file to your favorite VIC-20 storage medium and LOAD "WAX",device,1
Starting wAx
From Cartridge
With your VIC-20 turned off, plug the wAx cartridge in, then power up your VIC. Start wAx with
SYS 40960
From Disk or SD Card
Load wAx with
LOAD "WAX.PRG",8,1
When it is loaded, start wAx with
SYS 40960
wAx is friendly to your BASIC programs. When you start wAx, it will fix the BASIC pointers that are usually corrupted with LOAD,8,1. You may feel free to load wAx with a BASIC program in memory, but you will need to start wAx after the load operation to fix BASIC pointers.