[Coco] Trivia Fever

Robert Gault robert.gault at att.net
Mon Feb 24 17:58:41 EST 2014


Bill Pierce wrote:
>
> Robert,
> I would think if ccio has changed any through the years (most likely) then the addresses for the offsets used would need to be changed to match or find the "symbol" used for that offset value in the old os9defs and reassemble it with the newer os9defs using the symbols to get proper offsets in vtio. If it hasn't changed, then it should work.
> It would be one of the only modules that hasn't been changed.... :-)
>

F$Link uses the module header to find Start which, for modules like CCIO/VTIO, 
will be
start    lbra  Init
          lbra  Read
          lbra  Write
          lbra  GetStat
          lbra  SetStat
          lbra  Term
It will not matter if the absolute addresses changed as the module header will 
always point to "start". That's why kbdhack will work with any version of CCIO 
and will work with VTIO if you change the name string in kbdhack.

> Also, if you're trying to run it in Vcc, level 1 will not run in Vcc. The keyboard gives no response for some reason in both L1v1 & L1v2. L1v2 will run on a real Coco 3 though.
>
> The changing of the time could be a security check. That could have easily been done from the basic09 code had they not wanted to hide it. Maybe "Trivia" checks for that time then resets the clock again or fails if not found (??). Just a thought.
>
> As for the "TRIVIA #40", isn't that just running it with 40k of memory? I can't remember if Basic09 requires the K as in #40k or would #40 be 40 - 256 byte pages? It's been a long time since I ran Basic09 for anything.
>

Quoting from "The Complete Rainbow Guide to OS-9 LevelII Vol.1, "... when you 
use runb this way (menu) OS-9 gives it 4K of memory for variables. There is no 
easy way to get it to ask for more memory.
  You will have to run Runb yourself. Start the program like this:
runb menu #24k"

That ought to mean kbdhack should as a string have
runb trivia #24k
or something similar to get more memory. #40 would be pointless unless you were 
trying to reduce the amount of memory available to Trivia; which may be the case.

> I got the same disassembly you got, I was just counting the wrong number of bytes in the offsets.
>
>
> Bill Pierce

Well I can test that by manually starting Trivia and not using kbdhack. I'll 
post some results later.

Robert




More information about the Coco mailing list