I've been modifying the source code to PCEAS to add more functionality. I realized that NESASM is part of that source code and the changes I've made apply when I build NESASM with the internal switch.
So that point, if people still use NESASM - anything you would like to see added? Mind you, I'm not a professional level C programmer. I normally just write support utilities for my console programming needs. And while PCEAS/NESASM source code is a headache and a half, I've been getting fairly familiar with it in the short time I've been debugging/tracing through it.
What I changed/added so far:
- No more 8k opcodes greater than 1 byte crossing errors. I completely uncapped the range, incremented the page and bank registers. So don't have to worry about instructions giving errors on page crosses for 16k bank setups. The banks are still 8k in size, so you still need to take care/track of the numbering system on your side.
- Added ".DWL" and ".DWH". No more manually having to tell the DB defined data to use the LSB or MSB on each entry. These do it automatically.
- Modified the macro naming rules. You can now use the dot '.' character in the macro name. This was driving me nuts for a while. Makes the macros look cleaner: move.b #$12, label or move.w #1234, label or etc.
I have plans to add a bank alignment function and some sort of define bank value for a label, like .DB/DB/DWL/DWH do. For those tri-split tables for when you need longer pointer arrays.
Any suggestions/comments/complaints? Is it worth it? Or does NESASM just need to die and I can just concentrate on PCEAS?
So that point, if people still use NESASM - anything you would like to see added? Mind you, I'm not a professional level C programmer. I normally just write support utilities for my console programming needs. And while PCEAS/NESASM source code is a headache and a half, I've been getting fairly familiar with it in the short time I've been debugging/tracing through it.
What I changed/added so far:
- No more 8k opcodes greater than 1 byte crossing errors. I completely uncapped the range, incremented the page and bank registers. So don't have to worry about instructions giving errors on page crosses for 16k bank setups. The banks are still 8k in size, so you still need to take care/track of the numbering system on your side.
- Added ".DWL" and ".DWH". No more manually having to tell the DB defined data to use the LSB or MSB on each entry. These do it automatically.
- Modified the macro naming rules. You can now use the dot '.' character in the macro name. This was driving me nuts for a while. Makes the macros look cleaner: move.b #$12, label or move.w #1234, label or etc.
I have plans to add a bank alignment function and some sort of define bank value for a label, like .DB/DB/DWL/DWH do. For those tri-split tables for when you need longer pointer arrays.
Any suggestions/comments/complaints? Is it worth it? Or does NESASM just need to die and I can just concentrate on PCEAS?