This is just what I've been looking for!
I'm not sure why you'd need a tutorial? You code the compiler!
Because I've hardly found any documentation on how HuC is *supposed* to be used, and if I'm trying to make improvements, then I need to know what people think stuff is supposed to do.
There's some stuff in there that's not how I would have done it, and I need to know how to avoid breaking things.
It's pretty clear that compatibility with existing code is far more important than whatever notions I may have over what I personally feel to be the "preferred" way (there's hardly ever a hard "right" or "wrong" in this stuff).
I also want to be able to point folks to some decent documentation in the readme for Uli's HuC, and in any page of programming links that we make.
Anyway ... I'm just messing around inside someone else's code, not "coding the compiler". That's different. And remember that the core of HuC is based on Ron Cain's SmallC, which was designed to be short enough, and simple enough, to be a type-it-in-yourself magazine article, back-in-the-day.
And just because I messed-around in GCC to get the compiler outputing PC-FX code again, doesn't mean that I have any clue of the *real* complexity of the internals inside their compiler.
I disagree, I find coding skills to be mostly portable.
I've got to both agree, and disagree.
I hope that we can all agree that just because you've got a lot of experience in one area of programming, doesn't suddenly mean that you can instantly be a productive expert in a different area of programming. There is usually a *lot* of domain-specific knowledge that needs to be learned.
That *seems* to me to be the main thrust of what The Old Rover and Arkhan are saying, and I totally agree.
But I've found that a *good* programmer can usually pick up the simple stuff quickly, and transfer their problem-breakdown, and logic-organizational skills between domains and languages, pretty easily.
That *seems* to me to be what you're saying, and I agree.
But (IMHO), the really hairy areas in any domain, are going to take anyone a long while to master.
Luckily, there are very few of those (if any) on these old 4th-gen single-processor consoles.