System variable "MEMSIZ" (at 0F672h).
The Drive Parameter Blocks are not in a fixed area. To know the DPB of each drive see the "DPBLIST" (at 0F353h ~ 0F363h).
yes it is not ld hl,address but ld hl,(variable).
it is variable dependant on disk drives.
the highest one is HIMEM.
ld hl,(0xfc4a)
dec hl
thats the top byte you can use.
and the stackpointer goes somewhere below, need to reload it to be sure.
Hi, according to the MSX technical handbook, MEMSIZ is:
Quote:
MEMSIZ (F672H, 2)
contents: highest address of memory used by BASIC
So maybe is not what you want if your environment is not BASIC. The map can vary if you use binary (ASM) program, with 4000-7fffh available (in that picture is shown as used by BASIC interpreter), or DOS, with also 100-3fffh available.
But, concerning the question, MEMSIZ could not have the highest one to use if not using BASIC. It would be good if someone knows about this.