I feel so dumb after reading this...so damn dumb...
Please don't ever feel dumb or intimidated just because other people have a bunch of crazy domain-specific knowledge/experience that you don't.
I'm sure that there's a hell of a lot of stuff that you know that would have me scratching my head.
Feel free to create any toolchain you see useful. We're all very interested to see what can be done !
I'll release everything that I do at some point. That is part of the fun in doing it.
But be forewarned ... it will be tailored to my personal way of doing things, and probably won't be to everyone's tastes.
That's another part of the fun ... that programmers can modify other people's stuff to suite their own tastes.
From what I've seen, there's very little difference between good homebrew programmers and good professional developers ... it's all about the investment in, and access to, good tools.
Until Unity came around, the average small team just didn't have access to an expensive-to-create toolset.
HuC/PCEAS were put together as a hobby project (and initially I didn't even agree that HuC was appropriate... but I still contributed because I thought it was an interesting thing to study and learn from).
People like you and David Michel and Charles MacDonald
created the possibility for the rest of us to play here; you have nothing but my respect.
What you guys did to create MagicKit, HuC and PCEAS was amazing ... and doing so entirely without access to the official documentation is mind boggling.
One of the biggest things that drives toolchain improvement is competition ... because each competitor comes up with ideas to outsmart their competition ... and the cycle keeps repeating.
From what I can see, HuC and PCEAS have had no real competition, and stopped evolving in the early 2000s after they'd reached the point that they did everything that the people that created them needed them to do.
I'm just stirring things up a bit with a different set of expectations.
If I don't back up my observations with some action to improve things ... then you'll have every right to just dismiss me as a whining idiot.
Feel free to take whatever fragments you like from the assembler libraries for your own project.
Thank you.
I'll grab what I can ... but I do have to admit to like writing as much of my own stuff as I can ... I find the learning part to be fun.
I didn't really want to have to mess around inside GCC to get the PC-FX C compiler updated ... but I have to say that it's been an interesting experience (although combined with considerable grief from the never-to-be-sufficiently-damned GNU build system).
Yeah, the full control over where subroutines are placed in banks/addresses is incredibly powerful.
Definitely agree!
IIRC, for debugger support - shouldn't the symbol file that PCEAS outputs be enough to a debugger to use?
Yep, what's there should be enough to move things up to the next step ... symbolic debugging.
But in the last decade, nobody has actually taken that step!
I suspect that it's because, for whatever reason, most people are interested in hacking old games and not in creating new ones.
It doesn't help that while symbolic debugging is a great improvement for assembly language programmers, it's nearly useless for C programmers where the compiler writes most of the assembler code.
For C you need to have much more debugging information to get source-level debugging (with structure browsing), and HuC/PCEAS definitely doesn't output that.
To be honest, I'm not sure if CC65 does either, but as an assembly language programmer, I don't really care.
I am certainly not going to write a C source-level debugger for the PCE!
But I would like to try to get GDB hooking up to Mednafen for PC-FX debugging.
I used snasm for a while, but it didn't allow including a binary file and then reassembling on top it, which is why I switched to another 68k assembler.
Yeah, it's got the regular old INCBIN, but the capability that you're talking about ... nope.
It isn't really something that I've ever heard of being needed when developing new games, but I can certainly see that it would be extremely useful when hacking existing games.
SNASM was definitely designed for (and priced for) new game development.
Which reminds me of something. The mednafen author and I worked on creating a subtitling device for PCE CD games.
That's really cool! I've always wanted to do hardware stuff, but seem to be a bit of a physical clutz with a soldering iron. I'm a master at creating dry joints.
Your memory just sent me off on an investigation about creating a TMS99000-based SBC. It's the craziest CPU architecture that I've ever seen, and I always wanted to see what it was like to program. But there are too many other interesting things to do.
Did you get as far as a prototype, or were you still in the design phase?
[EDIT]
Totally off topic, but OMG ... both the TMS99105CPU and the V9990 (the VDP that didn't make it into the MSX Turbo R) are actually still available on eBay. That would make one heck of an interesting 1992-era homebrew SBC. It's a pity that I'm too dumb to design a board that would put them together. Especially in these days when board manufacturing has gotten so affordable.