Just Beginner's Notes
Alright. So I've been looking into Saturn dev again since I got home for the summer, and have myself a modification chip ordered for the Saturn.
But I am wondering about the best place to start. I'd love to begin understanding nearly everything about the Saturn possible, but...
Quite frankly, I've been reading through this documentation for a long time, and I can only say that I might be taking in about 65% of what I'm reading -- the SGL manuals are a bit easier, the SBL manuals are difficult, and trying to understand use of the SCU and SMPC directly is blowing my mind (I only have a very small background in understanding basic concepts of computing processes like interrupts, vector tables, etc).
I did recently rediscover some knowledge of make (which is always useful) and read through the GNU linker ld manuals and understand them mostly, which is quite useful as I now have some idea of the physical arrangement of memory in the Saturn programs.
But there's still a ton of stuff I don't know, and I haven't actually began programming anything yet. Use of the SGL seems somewhat simple (it remains to be seen, but it displays nowhere near the difficulty of, for example, the SBL). Using the SBL, I don't even know how to initialize the Saturn to save my life (the first manual regarding SCU and SMPC setup blows my mind).
Is this to be expected? Certainly people have said that 1) the documentation is hard to understand, 2) the documentation is especially hard to understand for someone relatively new to the hardware level of system programming, and 3) the documentation is even sometimes obfuscating essential information or just plain wrong.
I figure the best I can do is to begin using the SGL once I get my Saturn ready, but still...I'd like to be able to _understand_ what's happening under that thing.
In particular, I find the SCU and SMPC portions of the System Library User's Manual v1.0 to be especially hard to understand. In addtion, perhaps due to my not yet complete knowledge of C, much of the information in the SBL headers I find somewhat difficult. Has something to do with volatile void typecasts...at least, I think they're typecasts...when I run into those again I'll post a question or two about it.
At any rate, I doubt anybody here can solve all of my problems. But if you guys have any recommendation on where to start, I'd appreciate it.
PS: Unfortunately using a commslink-type or freewing interface doesn't seem practical for me as I have no clue how to build or find them, so I'd pretty much be stuck with just emulators and burning disks for the Saturn itself.
Alright. So I've been looking into Saturn dev again since I got home for the summer, and have myself a modification chip ordered for the Saturn.
But I am wondering about the best place to start. I'd love to begin understanding nearly everything about the Saturn possible, but...
Quite frankly, I've been reading through this documentation for a long time, and I can only say that I might be taking in about 65% of what I'm reading -- the SGL manuals are a bit easier, the SBL manuals are difficult, and trying to understand use of the SCU and SMPC directly is blowing my mind (I only have a very small background in understanding basic concepts of computing processes like interrupts, vector tables, etc).
I did recently rediscover some knowledge of make (which is always useful) and read through the GNU linker ld manuals and understand them mostly, which is quite useful as I now have some idea of the physical arrangement of memory in the Saturn programs.
But there's still a ton of stuff I don't know, and I haven't actually began programming anything yet. Use of the SGL seems somewhat simple (it remains to be seen, but it displays nowhere near the difficulty of, for example, the SBL). Using the SBL, I don't even know how to initialize the Saturn to save my life (the first manual regarding SCU and SMPC setup blows my mind).
Is this to be expected? Certainly people have said that 1) the documentation is hard to understand, 2) the documentation is especially hard to understand for someone relatively new to the hardware level of system programming, and 3) the documentation is even sometimes obfuscating essential information or just plain wrong.
I figure the best I can do is to begin using the SGL once I get my Saturn ready, but still...I'd like to be able to _understand_ what's happening under that thing.
In particular, I find the SCU and SMPC portions of the System Library User's Manual v1.0 to be especially hard to understand. In addtion, perhaps due to my not yet complete knowledge of C, much of the information in the SBL headers I find somewhat difficult. Has something to do with volatile void typecasts...at least, I think they're typecasts...when I run into those again I'll post a question or two about it.
At any rate, I doubt anybody here can solve all of my problems. But if you guys have any recommendation on where to start, I'd appreciate it.
PS: Unfortunately using a commslink-type or freewing interface doesn't seem practical for me as I have no clue how to build or find them, so I'd pretty much be stuck with just emulators and burning disks for the Saturn itself.