Yay, my MECB 6502 board arrived today and after a quick soldering session during my lunch break it worked first go! So I pushed my luck and tried to see if the SMON monitor I modified for MECB would work ... lo and behold, it worked too!
I still haven't tackled the "trace" side of things (which in the original required a VIA with timer and so is disabled in the version I compiled) but having the option to load, assemble the disassemble code is really handy.
6502 Monitor
Re: 6502 Monitor
This is really awesome!
I received your email, and hope to take a look tomorrow. I've spent the last week in KiCAD, and have just sent off the 4th new or revised PCB to be manufactured, in as many days. I'm itching to get back into some software, but I also have more hardware projects I want to get a start on, and I'm also overdue on starting work on my next video. Not enough hours in the day!
So, it's really awesome (and inspiring), knowing that others are busy making things happen too!
Re: 6502 Monitor
Thanks for providing a platform for which we can make things happen on!
Re: 6502 Monitor
Continuing my exploration of GitHub ... I've made a copy of my version available there:
https://github.com/epaell/MECB/tree/main/MECB_6502/SMON
The build script creates three versions for different ROM setups i.e. a minimal 8KB ROM (the default set up of the MECB; assuming ACIA at $E008); a 16 KB ROM and a 32 KB ROM (the latter being useful for inclusion in the 1 MB ROM expansion card) - the two larger ROM set-ups assume the ACIA is at $C008. I've also included the binaries that can be used to program the FLASH ROMs (without having to recompile). Thanks to Greg for making updates to allow it to compile with ca65/ld65 tools (which makes the ROM generation a lot neater).
https://github.com/epaell/MECB/tree/main/MECB_6502/SMON
The build script creates three versions for different ROM setups i.e. a minimal 8KB ROM (the default set up of the MECB; assuming ACIA at $E008); a 16 KB ROM and a 32 KB ROM (the latter being useful for inclusion in the 1 MB ROM expansion card) - the two larger ROM set-ups assume the ACIA is at $C008. I've also included the binaries that can be used to program the FLASH ROMs (without having to recompile). Thanks to Greg for making updates to allow it to compile with ca65/ld65 tools (which makes the ROM generation a lot neater).
Re: 6502 Monitor
Awesome! I started a bit of work on the Timer integration, but have been sidetracked (again).epaell wrote: ↑Thu Jul 04, 2024 11:30 pm Continuing my exploration of GitHub ... I've made a copy of my version available there:
https://github.com/epaell/MECB/tree/main/MECB_6502/SMON
The build script creates three versions for different ROM setups i.e. a minimal 8KB ROM (the default set up of the MECB; assuming ACIA at $E008); a 16 KB ROM and a 32 KB ROM (the latter being useful for inclusion in the 1 MB ROM expansion card) - the two larger ROM set-ups assume the ACIA is at $C008. I've also included the binaries that can be used to program the FLASH ROMs (without having to recompile). Thanks to Greg for making updates to allow it to compile with ca65/ld65 tools (which makes the ROM generation a lot neater).
We'll have to figure out how to keep our efforts aligned?
In the meantime, one more general addition I made to the smon.asm HLPMSG was the addition of the missing 'R' command help:
Code: Select all
.byte "R - Display the contents of the CPU registers",0
Re: 6502 Monitor
Oh, I didn't even notice that was missing.
Another oddity, is the ability to modify memory with hex values (like the M command in ASSIST09) - maybe it is there but I have just missed it? I do like that SMON is much friendlier with inadvertent key presses and backspaces compared to ASSIST09. I also like the base conversion and simple hex operations - very handy.
LOL, I can't say that my efforts have been particularly extensive - mostly following your lead (perhaps me even being a bit regressive too because I tend to mainly work on the command line when it comes to compiling). My only subtle change was to pass the location of the I/O as a define when doing the compile (to allow for different set ups). I guess it might also be possible with Visual Studio Code but I'm not very familiar with that environment and how it maps across different platforms.
Another oddity, is the ability to modify memory with hex values (like the M command in ASSIST09) - maybe it is there but I have just missed it? I do like that SMON is much friendlier with inadvertent key presses and backspaces compared to ASSIST09. I also like the base conversion and simple hex operations - very handy.
LOL, I can't say that my efforts have been particularly extensive - mostly following your lead (perhaps me even being a bit regressive too because I tend to mainly work on the command line when it comes to compiling). My only subtle change was to pass the location of the I/O as a define when doing the compile (to allow for different set ups). I guess it might also be possible with Visual Studio Code but I'm not very familiar with that environment and how it maps across different platforms.