Not sure if this is the right section of the forum for asking OS/system related questions.
I'm having a look at OSBYTE &83.. I see I get $1900 back as the address for the "top of the OS RAM address (OSHWM)". This confuses me when I look at the memory map on page 500 of the User Guide.
Is there a better memory map available somewhere that illustrates where this fits in?
Various OSBYTE discussions
Re: Various OSBYTE discussions
The memory map on p500 is correct - for an UNEXPANDED BBC Micro
But as you add additional Paged ROMS, they may request memory from the MOS, in which case OSHWM moves upwards to accomodate them.
Acorn's DFS (Disc Filing System) requests 11 pages of RAM for its own use (11 x 256 bytes = 2.75 Kb), so OSWHM rises from &E00 to &1900 to accommodate this request. DFS is free* to use the memory between &E00 and &18FF for its own purposes. *actually, there's public and private RAM allocated, so it's a bit more complex, but you get the idea.
By default, BASIC will set PAGE to OSHWM (OS High Water Mark - see p431). But you can move PAGE up and down to you heart's content. Remember, BASIC and the MOS are independent of each other!
Now, for added confusion, on a Master that memory used by Paged ROMs is hidden away elsewhere by the MOS, so OSHWM will generally stay around &E00.
And if you're running on a 6502 second/co processor, I believe OSHWM is at &800.
OSHWM is a moveable feast!
But as you add additional Paged ROMS, they may request memory from the MOS, in which case OSHWM moves upwards to accomodate them.
Acorn's DFS (Disc Filing System) requests 11 pages of RAM for its own use (11 x 256 bytes = 2.75 Kb), so OSWHM rises from &E00 to &1900 to accommodate this request. DFS is free* to use the memory between &E00 and &18FF for its own purposes. *actually, there's public and private RAM allocated, so it's a bit more complex, but you get the idea.
By default, BASIC will set PAGE to OSHWM (OS High Water Mark - see p431). But you can move PAGE up and down to you heart's content. Remember, BASIC and the MOS are independent of each other!
Now, for added confusion, on a Master that memory used by Paged ROMs is hidden away elsewhere by the MOS, so OSHWM will generally stay around &E00.
And if you're running on a 6502 second/co processor, I believe OSHWM is at &800.
OSHWM is a moveable feast!
Re: Various OSBYTE discussions
Ah! I just noticed PAGE on the memory map on page 500. I was looking for OSHWM but I guess they are more or less one in the same thing initially.
Re: Various OSBYTE discussions
OSHWM is the OS term and so is what OSBYTE calls and the like will refer to. PAGE is a BASIC term (remember, on the Beeb, BASIC and the OS are two different things; BASIC calls the OS to do stuff). BASIC will set PAGE to OSHWM on startup.
Rgds
Stephen
Stephen
Re: Various OSBYTE discussions
I know I had the feeling I'd get slapped for saying they are the same thing haha. I understand the difference context.
BTW, whereabouts are you from? - as soon as I see "Aye", I have to ask.
Re: Various OSBYTE discussions
*blink* I'm not sure I've used "Aye"; maybe you mixed me and James
Rgds
Stephen
Stephen
Re: Various OSBYTE discussions
It’s an affectation, I’m originally from The Midlands.
Re: Various OSBYTE discussions
We'd call that "South" when I was a kid.. There and again.. anything south of Darlington was "South" Haha. I'm from close to Geordieland. I don't hear many people saying "Aye" these days apart from the old man.