XC16 Memory location bank 0 address $A000 till $A7FF

If you have feature requests, this is the place to post them. Please note your idea may already be something we have already discussed and decided against, or something we are working on privately, and we cannot be held responsible for any similarities in such instance. Whilst we cannot respond to every suggestion, your idea will be read and responded to where possible. Thank you for your input!
ZeroByte
Posts: 714
Joined: Wed Feb 10, 2021 2:40 pm

XC16 Memory location bank 0 address $A000 till $A7FF

Post by ZeroByte »


Came late to this thread, but I would like to add that the top half of bank 0 is used by DOS for things such as LOAD/SAVE buffer space, current file offset pointers, etc.

It's definitely NOT clear to use just because Kernal doesn't use it.

And as for LOAD's behaviors:

If you start a LOAD anywhere, it will happily overwrite ZP, the stack, IO, ROM, etc. As of R39, whatever RAM bank is active when LOAD is called is the one which will be used for LOADs that go into banked memory. Whenever a LOAD crosses the BFFF -> C000 boundary, it increments the bank number and wraps back down to A000, and continues. If the inc(bank#) overflows, it fails (I think - I forget whether I made it check that or not)

When LOAD finishes, it returns the address of the next byte in memory above the last one loaded, and leaves the updated RAM bank active.

So if you were to load exactly 8K into $A000 using Bank 3, then it would return $A000 as the "next address" and Bank 4 would be active.

Edmond D
Posts: 489
Joined: Thu Aug 19, 2021 1:42 am

XC16 Memory location bank 0 address $A000 till $A7FF

Post by Edmond D »



On 3/30/2022 at 2:04 PM, ZeroByte said:




And as for LOAD's behaviors:



Remember the simple days, when you typed LOAD,  pressed play on the dataset, and waited? ?

 

Scott Robison
Posts: 952
Joined: Fri Mar 19, 2021 9:06 pm

XC16 Memory location bank 0 address $A000 till $A7FF

Post by Scott Robison »



On 3/30/2022 at 3:57 PM, Edmond D said:




Remember the simple days, when you typed LOAD,  pressed play on the dataset, and waited? ?



 



Back when you started loading a big game before you went to school so that it would be almost finished loading by the time you got home. ?

Edmond D
Posts: 489
Joined: Thu Aug 19, 2021 1:42 am

XC16 Memory location bank 0 address $A000 till $A7FF

Post by Edmond D »



On 3/30/2022 at 5:02 PM, Scott Robison said:




Back when you started loading a big game before you went to school so that it would be almost finished loading by the time you got home. ?



With only 3K the VIC 20 didn't take a whole school day. When at school with a 32Kb PET, we'd stick to one game to avoid wasting time with waiting, as we'd be asked to do school work while loading.

Scott Robison
Posts: 952
Joined: Fri Mar 19, 2021 9:06 pm

XC16 Memory location bank 0 address $A000 till $A7FF

Post by Scott Robison »



On 3/30/2022 at 8:03 PM, Edmond D said:




With only 3K the VIC 20 didn't take a whole school day. When at school with a 32Kb PET, we'd stick to one game to avoid wasting time with waiting, as we'd be asked to do school work while loading.



Well, even a C64 didn't take a full school day. It's just my version of walking to school uphill in waist deep snow both ways.

User avatar
StephenHorn
Posts: 565
Joined: Tue Apr 28, 2020 12:00 am
Contact:

XC16 Memory location bank 0 address $A000 till $A7FF

Post by StephenHorn »



On 3/30/2022 at 11:33 PM, Scott Robison said:




Well, even a C64 didn't take a full school day. It's just my version of walking to school uphill in waist deep snow both ways.



What I find hilarious about this analogy is that my preferred bus stops for school were, in fact, on opposite sides of our family's house in the morning vs. the evening, and our house was, in fact, located on a hillside. So I did literally walk uphill (a very short, short ways) both going to the school (bus) and coming from it. And since I grew up in a snowy, wintry part of the world, that did sometimes mean braving waist-high snow (while trudging through our backyard), because it meant I could get home in time for the start of my favorite afternoon cartoons, rather than being stuck on the bus for another 30 minutes while it looped its way around.

#firstworldproblemsforkids

Developer for Box16, the other X16 emulator. (Box16 on GitHub)
I also accept pull requests for x16emu, the official X16 emulator. (x16-emulator on GitHub)
Post Reply