[A83] Re: What the heck is RST???


[Prev][Next][Index][Thread]

[A83] Re: What the heck is RST???




It's still my personal opinion that you're better off using FlashToRAM, or
one of the other calls.  If you're in the middle of a two byte token, just
load some more data from Flash :)

Now that I know what, more specifically, you're trying to do, there's an
additional problem with the port 7 stuff.  The ROM routines that convert
tokens to text use system RAM, which wouldn't be available without bank1 set
to the regular location.  And you *really* don't want to have all those
routines in your app, because the location of the table of token strings is
not necessarily static, so you'd have to have *all* the token strings in
your program as well.

If you really, really, really don't want to use the ROM calls to read stuff
from Flash, I think the way to go is what I think you originally mentioned,
copy a routine to RAM, change the page in port 6, and read from there.
(You'll have to be sure that the archived variable doesn't run off into the
next page.  FlashToRAM handles this automatically for you, but if you're
reading manually, you have to worry about it).

-Dan Englender

----- Original Message -----
From: "Hyperbyte" <hyper@hysoft-automation.com>
To: <assembly-83@lists.ticalc.org>
Sent: Saturday, July 07, 2001 5:41 PM
Subject: [A83] Re: What the heck is RST???


>
> Ok, what I'm trying to do is read "basic text" files (containing
> tokens) directly from flash. It needs to be done very quick, since
> it needs to be translated into human readable text on the fly.
>
> The program I've written so far handles only unarchived variables,
> but even then it takes a little while to display al of the page.
> So I thought having _vputmap in the program (maybe even with an
> own font) would speed up the displaying process.
> Since every byte is read separately I like as much speed gain as possible.
>
> I'm also a bit reluctant of copying a selected area of the program to a
certain
> part of the ram, because of the possiblity of splitting a two-byte token
in
> half. I'm afraid unarchiving the program wouldn't be very handy if the ram
> is almost full.
>
> Also, I like to do things the unconventional way :-)
>
> --Peter-Martijn
>
>
>
> > Well I think he was thinking of wanting to do it quickly, i.e. probably
> > direct access. Perhaps he didn't know of FlashToRAM, as I didn't either.
> >
> > -----Original Message-----
> > From: assembly-83-bounce@lists.ticalc.org
> > [mailto:assembly-83-bounce@lists.ticalc.org]On Behalf Of Dan Englender
> > Sent: Saturday, July 07, 2001 3:12 PM
> > To: assembly-83@lists.ticalc.org
> > Subject: [A83] Re: What the heck is RST???
> >
> > At risk of sounding ignorant because I didn't read the earlier parts of
the
> > conversation...If all he's doing is reading variables from Flash, why
would
> > he need to do any so complicated as the RAM page switching scheme?
> >
> > What I do to read variables from Flash (in MirageOS anyhow), is just
copy
> > all the archived VAT/header information to a bit of RAM using
FlashToRAM,
> > sort out from that where the data actually starts, and then store that
> > pointer.  At that point, you can just use FlashToRAM, LoadCIndPaged, or
the
> > PagedGet routines to read the data from Flash, or load it into a buffer
in
> > RAM.
> >
> > -Dan Englender
> >
> >
> >
>
>
>




Follow-Ups: References: