I'm working on X16 Edit, a text editor. There's a thread in Software Library Chat discussing the program in depth. My program uses banked RAM to store text that's edited.
However, I have a general question regarding the hardware.
It's said that the final product will have banked RAM of 512 KB expandable to 1 MB, 1.5 MB or 2 MB (by populating 1, 2 or 3 sockets).
Is there a way for a program to determine what memory banks are actually available?
If there is no other option, would it be possible to write a routine that tests certain memory addresses by first writing values and then reading them back?
I guess that approach could work, but it depends on what the hardware does when you access an unpopulated address in banked RAM.
A test routine would probably work if the data bus floats (returning a random value) or if it's tied high or low (returning ff or 00).
Hi,
I'm working on X16 Edit, a text editor. There's a thread in Software Library Chat discussing the program in depth. My program uses banked RAM to store text that's edited.
However, I have a general question regarding the hardware.
It's said that the final product will have banked RAM of 512 KB expandable to 1 MB, 1.5 MB or 2 MB (by populating 1, 2 or 3 sockets).
Is there a way for a program to determine what memory banks are actually available?
If there is no other option, would it be possible to write a routine that tests certain memory addresses by first writing values and then reading them back?
I guess that approach could work, but it depends on what the hardware does when you access an unpopulated address in banked RAM.
A test routine would probably work if the data bus floats (returning a random value) or if it's tied high or low (returning ff or 00).
Share this post
Link to post
Share on other sites