Page 1 of 1

replacement for codex as a monitor and assembler

Posted: Tue Jun 18, 2024 5:12 am
by upsnowman
Hello. I noticed in R47 codex is removed. I'm guessing its because theres no 65816 support yet (and R47 brings 65816 support)? Will there be a monitor replacement/codex replacement. Sorry if this has been answered. I did search the forums for codex without much luck on answering this question.
Anyone have a good IDE for writing 6502/65816 assembly for the X16. Linux is my main OS but I'll flip to windows if I have to.

Re: replacement for codex as a monitor and assembler

Posted: Tue Jun 18, 2024 3:44 pm
by TomXP411
CODEX was removed because it was never actually finished, and the person who created it seems to have lost interest.

MONITOR still works, although it doesn't support 65C816-specific opcodes.

Re: replacement for codex as a monitor and assembler

Posted: Tue Jun 18, 2024 3:49 pm
by voidstar
I don't think the 65816 support or lack thereof was the main reason. Many were confused on how CODEX works, though there were at least a couple that did report they found it useful - so I'm not sure if it was a lack of documentation or tutorial about it. But it is true, part of R47 was improved support for the 65816, and development support for CODEX seemed limited (with no updates in over a year, IIRC).

Maybe it could be brought back, if there is larger community support for it than was realized.

On system in the /DEV folder of the SD is ASMEDIT, which I think was recently updated within the past month - so the author is still involved, and it has a very lengthy manual. Its assembler syntax is a bit odd to me (just a bit different than mainstream ones that I'm used to), but it does work. Offset, ca65 is what I've used - I'm trying to remember what David said he used (it wasn't ca65).

Re: replacement for codex as a monitor and assembler

Posted: Tue Jun 18, 2024 10:18 pm
by Ed Minchau
I'm currently rewriting the META/L editor to work with both 65816 and 65c02. I'm adding a couple new features too.

Re: replacement for codex as a monitor and assembler

Posted: Tue Jun 25, 2024 2:09 pm
by Jestin
CODEX had several features sliced out of it in order to fit into ROM, and then those features were optional if loaded from SD as plugins. This was very awkward for software that ships on ROM. It was also very inconvenient to write code with, requiring navigation of a menu system just to insert a line of code...which got inserted above the current line and not below it. It just wasn't complete nor polished.

Since a monitor already exists, I think a built-in assembler to pair with X16EDIT would be a more worthwhile effort.

Re: replacement for codex as a monitor and assembler

Posted: Fri Jun 28, 2024 6:31 pm
by upsnowman
Thanks for the feedback. Much appreciated. I grabbed asmedit and will play with that. I look forward to seeing METAL also when its done and will keep an eye out for it. I use Merlin 128 on the C128 as well as the Apple II and simply enjoy the act of coding on target platforms. Call me crazy. I also utilize IDE's but its fun using the target hardware. The X16 is very capable also/fast/upgraded to 2meg ram etc..

Re: replacement for codex as a monitor and assembler

Posted: Sat Jun 29, 2024 3:53 pm
by Martin Schmalenbach
Is there a short list of preferred or ideal assembler tools to use for developing machine language programs for the X16?

I don't mind if they are cross assemblers and IDEs running on Windows, Linux or MacOS, or if they are native and running on the X16 itself.

My own assembler, written in Basic, is slow - especially for larger programs. I can't Blitz it at the moment because Blitz doesn't yet handle file input and output.

Re: replacement for codex as a monitor and assembler

Posted: Sat Jun 29, 2024 8:31 pm
by TomXP411
Any 65C02 assembler works. Popular ones are ACME, 64TASS, Kick Assembler, and CC65/CA65.

Ideally, you want an assembler that supports Commodore ASCII (aka PETSCII) conversion, which all of the above will do. CBM PRG Studio is also useful for its screen editors and utilities, but I don't use it for project management or assembly, because it can be buggy, and it doesn't actually have an X16 profile (or didn't, the last time I looked.)

You also need a text editor: Popular editors include Visual Studio Code, Atom, Notepad++, EMACS, and whatever code editor ships with your favorite Linux distro. There's really nothing special involved for a code editor; it just needs to be able to output pure ASCII/ANSI text.

There really aren't any "IDEs" available for the system, because that would involve either integrating an emulator or using remote debugging on hardware; I don't know of any reliable solutions for that, yet. So you're really going to be using a good code editor, assembler, and emulator separately.