Duda con PASMO. Datos antes de ORG.

Todo sobre la creación, diseño y programación de nuevo software para
nuestro Spectrum

Moderador: Sir Cilve Sinclair

Duda con PASMO. Datos antes de ORG.

Notapor JBGV el Mie Ene 27, 2016 11:34 am

Hola a todos !

Tengo una duda con PASMO, a ver si me podéis ayudar. :roll:

¿Hay alguna forma en PASMO para incluir datos en una dirección de memoria determinada?
Quiero poner algunos datos gráficos con DEFB exactamente en la dirección 28000.

Normalmente, si puedo, intento no usar la memoria contenida (cuando me sobra memoria), así que inicio los jueguillos con un “ORG 32768” y finalizo con un “END 32768”. La cuestión es que me gustaría tener ciertos datos en la dirección 28000, pero a ser posible sin modificar el ORG del programa y sin cargar varios bloques de forma separada. (Manías... :oops: )

Muchas gracias ¡!
Avatar de Usuario
JBGV
Manic Miner
 
Mensajes: 269
Registrado: Vie Feb 11, 2011 10:16 am

Re: Duda con PASMO. Datos antes de ORG.

Notapor Kyp el Mie Ene 27, 2016 12:29 pm

Con el Pasmo no se si será así, pero con el ensamblador del zxspin, si haces:

org 28000
; datos

org 32768
; programa

en el mismo archivo, te genera un solo binario con todo junto y rellena los huecos con nops.

La pega es que al cargar tienes que empezar en 28000 aunque el punto de entrada siga siendo 32768:
load "" code 28000
randomize usr 32768
Avatar de Usuario
Kyp
Manic Miner
 
Mensajes: 204
Registrado: Lun Dic 16, 2013 7:16 pm

Re: Duda con PASMO. Datos antes de ORG.

Notapor JBGV el Mie Ene 27, 2016 12:45 pm

Pues voy a probar eso mismo con PASMO.

Muchas gracias !
Avatar de Usuario
JBGV
Manic Miner
 
Mensajes: 269
Registrado: Vie Feb 11, 2011 10:16 am

Re: Duda con PASMO. Datos antes de ORG.

Notapor Gandulf el Mie Ene 27, 2016 12:50 pm

Tal cual, pueds utilizar tantos org como estimes oportuno en pasmo, para colocar datos y fragmentos de código donde quieras. De hecho lo normal es tener varios, porque hay ciertas partes de código que quieres tener en memoria no contenida o ubicarla en zonas de memoria específicas
Un saludo,

Gandulf
Gandulf
Nonamed
 
Mensajes: 1067
Registrado: Lun May 07, 2007 10:06 pm

Re: Duda con PASMO. Datos antes de ORG.

Notapor JBGV el Mie Ene 27, 2016 11:46 pm

Muchas gracias a ambos, funciona perfectamente. Exactamente lo que quería. :D :D
Avatar de Usuario
JBGV
Manic Miner
 
Mensajes: 269
Registrado: Vie Feb 11, 2011 10:16 am

Re: Duda con PASMO. Datos antes de ORG.

Notapor climacus el Vie Ene 29, 2016 1:49 pm

PASMO es una maravilla. Yo todos mis juegos los he programado con él y ningún problema. Y eso que seguro que lo uso en menos de un 20 por ciento de sus posibilidades
Todos mis juegos en formato físico
http://www.matranet.net/boutique/zx/zx.php
Avatar de Usuario
climacus
Sabreman
 
Mensajes: 405
Registrado: Mar Ago 25, 2009 1:46 pm

Re: Duda con PASMO. Datos antes de ORG.

Notapor mcleod_ideafix el Vie Ene 29, 2016 9:16 pm

Sí que lo es, pero le echo en falta dos cosas que me han hecho falta en alguna ocasión, y que han sido la causa de que me pasara a SJAsmPlus en algunas ocasiones:
- Poder definir areas de memoria para el 128K: En SJAsmPlus puedo definir un área de memoria no sólo en la posición que quiera, sino también en el banco que quiera. Esto puedo hacerlo porque lo que genera SJAsmPlus es un fichero SNA, no un TAP
- Estructuras: esto es muy útil cuando quieres implementar, por ejemplo, un gestor de sprites, en donde el sprite que manejas en ese momento lo tienes apuntado por IX y usas cosas como ld a,(ix+Sprite.CoordenadaX). Vale que también se puede hacer con unos cuantos EQU y haciendo ld a,(ix+CoordenadaX) pero la ventaja que tienen los structs es que puedes cambiar, añadir o quitar campos sin necesidad de recalcular los offsets cada vez.

Luego hay cosas que creo que pueden hacerse con macros en PASMO, pero que SJAsmPlus facilita mucho, como el poder alinear bloques de memoria a multiplo de 32, 256, etc
Web: ZX Projects | Twitter: @zxprojects
Avatar de Usuario
mcleod_ideafix
Johnny Jones
 
Mensajes: 3960
Registrado: Vie Sep 21, 2007 1:26 am
Ubicación: Jerez de la Frontera


Volver a Programación y nuevos desarrollos

¿Quién está conectado?

Usuarios navegando este Foro: Bing [Bot] y 1 invitado

cron