[Note - This is hopelessly outdated.] SATURN is the pseudoprocessor in the E10-KL10 program. It's kinda a play on DEC's never-ten (Jupiter), and the fact that I name everything I can after Sailor Senshi... (If you don't get that refrence, you don't know me well enough!) Chances are good I'll never hit the KL right on the head. Therefore, Saturn will always have her own oddities, and I'm attempting to document them here. This is also a hackers' notes type doco. As a sidenote, I see the 10 family like this: KA10 - First one. KI10 - This one had the best panel. KL10 - Large 10. Microcoded and such. KS10 - Small 10. It's odd. KC10 - Jupiter, the Never-Ten. And I humbly add mine: KH10 - (Hint: Hotaru == Saturn, and KS10 is taken) There were others, the XKL TD machines, the Foonly, and some I'm prolly not aware of, but those are beyond my scope. And now, for the actual notes... #1: DEALING WITH MEMORY: All addresses passed to the do_memory_read and do_memory_write functions are assumed to be full global addresses. Don't cheat and use in-section addresses - the effective address calculation (which is gross and hairy and undoubtably buggy, I'll rewrite it later) returns global addresses. (I think.) Only AC refrences can get around this rule. #2: MISCELLANEOUS ARITHMETIC ODDITIES: The math routines probably lose horribly, and I don't understand them. They're prolly fairly rife with odd screws. Therefore, Saturn will undoubtably have some very odd large lossage with math and the associated flags... #3: THE FPD FLAG F_FPD is never used, to to my different implementation of PI. I save the state of the microcode (do_microsave();), deal with the interrupt, then restore the state. (undo_microsave();).