Difference between revisions of "Accessing paged and banked memory"

From BeebWiki
Jump to: navigation, search
m (1 revision)
m (1 revision)
(No difference)

Revision as of 19:12, 8 March 2015

OSRDSC (previously named OSRDRM) should read from any specified memory. In actuality, it only reads from the currently displayed screen memory and the specified paged ROM.

OSWRSC should write to any specified memory. In actuality, it only writes to the currently displayed screen memory and the currently selected paged ROM/RAM.

OSWORD 5 and 6 should read and write to any specified memory. In actuality, they only access the main memory, regardless of display, and the currently selected paged ROM/RAM.

&FFrrxxxx -> sideways ROM/RAM &FFFFxxxx -> main memory &FFFExxxx -> displayed memory &FFFDxxxx -> shadow memory &FF7Fxxxx -> Hazel memory

   DEFFNrm(!&F6):LOCAL Y%:Y%=?&F8 EOR &F0:IF?&F8<&80:IF?&F7>&BF:?&F9=0
   IF!&F6<0:IF?&F7>&7F OR Y%=&E:=(USR&FFB9)AND&FF ELSE =?!&F6
   DEFFNwm(!&F6,A%):LOCAL Y%:Y%=?&F8

See Also

http://mdfs.net/Docs/Comp/BBC/MemAddrs