Memoria RAM HB75P y MFR+512

Por HermanitoII

Supporter (7)

Imagen del HermanitoII

09-11-2018, 12:23

Tengo una duda con la RAM de mi HB75P. He estado revisando mensajes pero no encuentro nada parecido... quizá porque es algo muy básico, a saber.

Lo tengo funcionando sin problemas con la MFR+512k. Desde néxtor ejecuto mem y me sale esto

https://www.msx.pics/image/UvMEe

Entiendo que la detecta y me deja 400k libres

Luego salgo a Basic y con ?fre(0) me da la memoria libre para el BASIC

https://www.msx.pics/image/UvAns

Detecta solamente 25143. La pregunta es si desde BASIC se puede tener acceso a la RAM de la MFR o no. O si el problema es que no puede detectar más de una determinada cantidad de RAM y por eso sale menos de lo que debiera o si hay que hacer algo más para tener acceso a ella.

No es que me haga falta en realidad pues estoy aprendiendo TODO desde cero patatero y para las cuatro chorradillas que voy programando 24k es un abismo :P pero quiero saber que es lo que sucede con esa RAM en realidad.

Gracias!

Login sesión o register para postear comentarios

Por MAROCA

Master (146)

Imagen del MAROCA

09-11-2018, 15:17

No es que sepa muchi, pero la ram que tiene tu Sony es la maxima que puede direccionar el Z80, y esta en el Slot 3, pero la RAM que lleva el MFR es mapeada, no se si hay alguna implementacion para aprovechar mas ram en el msx-basic 1.0, molaria ver 65535 bytes free...

Por HermanitoII

Supporter (7)

Imagen del HermanitoII

09-11-2018, 16:00

OK! Algo así imaginaba que sería. Gracias!

Por erpirao

Paladin (806)

Imagen del erpirao

09-11-2018, 16:49

como dice MAROCA, el z80 maneja hasta 64KB directos, de eso si no recuerdo mal gran parte se la come la BIOS (16KB) y el BASIC (otros 16), quedando 32, si metes además la disk-basic, se te quedan esos 25KB,
hay un sistema de hacer que el último segmento de 16KB del basic se utilice a través de un OUT (en su día lo estudié, pero no lo recuerdo bien, puede ser el &hFE), que lo que hace es que vas saltando de posición en posición de la RAM para aprovecharla mejor, pero es más artesano
, si que molaría que el R800 hubiese usado el modo lineal que tiene (nadie tiene claro si son 19 o 24 bits) para tener un basic con 192KB en el ST o 448KB en el GT)...ahh el R800 que gran desperdiciado.

Por AxelStone

Prophet (2640)

Imagen del AxelStone

19-11-2018, 14:44

Una forma sencilla de usar esa memoria es usar Nextor Basic, que tiene acceso a toda la RAM mapeada.

Por HermanitoII

Supporter (7)

Imagen del HermanitoII

21-11-2018, 07:04

Pero se puede hacer desde un MSX1? Por lo que leo es para msx2 en adelante

Por osises

Master (211)

Imagen del osises

21-11-2018, 16:00

Efectivamente, el Z80 solamente puede direccionar hasta 64KB simultáneamente. Eso significa que, si se quiere utilizar más de esa cantidad se recurre a "mapearla"; esto significa que se pueden sustituir bloques de 16KB por otros del resto de la memoria, teniendo así acceso a toda ella (teniendo en cuenta que solamente se tendrá acceso a las 64KB que estén seleccionadas en ese momento).

Respecto a la memoria que reporta BASIC corresponde a la RAM disponible para almacenar un programa BASIC. Esta no es más que 32KB (descontando la necesitada por el sistema para sus variables). Esto es debido a que el intérprete BASIC necesita que en todo momento esté seleccionada la página de 16KB de la ROM básica del sistema y la página de 16KB del intérprete BASIC, lo que deja solamente libre el resto de memoria RAM hasta 64KB, es decir, 32KB. Por eso aparecen algo más de una veintena de KB libres que son las disponibles para almacenar el programa BASIC.

My MSX profile