Ok, I've got this prototype working. It's a VIC 20 with a 65C816 decoded to 128K of adressable memory. Four different versions of Commodore Basic V2.0, two with Jiffy DOS. C64 style banked memory, plus two 4K RAM banks under the Character ROM. This VIC 20 can also be turned on in stock mode also.
But what I really need is a simple machine language monitor for the 65C816 that works on Commodore hardware. I'm not a big programmer. It's probably been 30 years since I done any assembly programming on the VIC. Can anyone steer me in the direction of something that I could make work with this animal?
Regards.
VIC 20 W/65C816
Moderator: Moderators
-
- Vic 20 Amateur
- Posts: 69
- Joined: Thu Jul 23, 2015 5:11 pm
- Location: Lansing, MI, USA
- Occupation: Data Analyst
Re: VIC 20 W/65C816
I'm just a Software Guy who has no Idea how the Hardware works. Don't listen to me.
- Mike
- Herr VC
- Posts: 4846
- Joined: Wed Dec 01, 2004 1:57 pm
- Location: Munich, Germany
- Occupation: electrical engineer
Re: VIC-20 w/ 65C816
There exists a re-implementation of Supermon for 65816, written by BDD of 6502.org. You find the source here:
http://sbc.bcstechnology.net/download.html.
Note a 65816 disassembler is considerably more difficult to implement than a disassembler for 8-bit 65xx CPU. In principle, it has to 'execute' the code as it steps along to keep track of the E bit in the status register. Otherwise opcodes will be disassembled in a wrong way.
http://sbc.bcstechnology.net/download.html.
Note a 65816 disassembler is considerably more difficult to implement than a disassembler for 8-bit 65xx CPU. In principle, it has to 'execute' the code as it steps along to keep track of the E bit in the status register. Otherwise opcodes will be disassembled in a wrong way.
-
- Vic 20 Amateur
- Posts: 69
- Joined: Thu Jul 23, 2015 5:11 pm
- Location: Lansing, MI, USA
- Occupation: Data Analyst
Re: VIC 20 W/65C816
Thank you for your suggestions, I will look at them.
- chysn
- Vic 20 Scientist
- Posts: 1205
- Joined: Tue Oct 22, 2019 12:36 pm
- Website: http://www.beigemaze.com
- Location: Michigan, USA
- Occupation: Software Dev Manager
Re: VIC-20 w/ 65C816
Somebody asked me if I could modify wAx for 65816, and I couldn't think of a way to keep track of 8/16-bit register width. Sure, you can try to simulate execution as you go, but you never know where a subroutine starts or what happened before a subroutine was called. It seemed like a "write-only" language.Mike wrote: ↑Fri Nov 12, 2021 4:08 am There exists a re-implementation of Supermon for 65816, written by BDD of 6502.org. You find the source here:
http://sbc.bcstechnology.net/download.html.
Note a 65816 disassembler is considerably more difficult to implement than a disassembler for 8-bit 65xx CPU. In principle, it has to 'execute' the code as it steps along to keep track of the E bit in the status register. Otherwise opcodes will be disassembled in a wrong way.
VIC-20 Projects: wAx Assembler, TRBo: Turtle RescueBot, Helix Colony, Sub Med, Trolley Problem, Dungeon of Dance, ZEPTOPOLIS, MIDI KERNAL, The Archivist, Ed for Prophet-5
WIP: MIDIcast BASIC extension
he/him/his
WIP: MIDIcast BASIC extension
he/him/his