HonradosHP
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.

LIBRARY DATA

3 participantes

Ir abajo

LIBRARY DATA Empty LIBRARY DATA

Mensaje  MANUELTNT1986 Sáb Ene 16, 2010 9:37 am

HOLA A TODA LA COMUNIDAD DE ESTE FORO, ALGUIEN ME PUEDE DECIR
COMO CREAR UN LIBRARY DATA DESDE UN PROGRAMA?
Y SOBRE COMO INGRESAR UN CODE DENTRO DEL SYTEM DESDE EL DEBUG4X.
MANUELTNT1986
MANUELTNT1986
Baby HP
Baby HP

Masculino Cantidad de envíos : 11
Edad : 38
Localización : Peru
Calculadora : HP 50g
ROM : 2.15

http://www.manuel1986.jimdo.com

Volver arriba Ir abajo

LIBRARY DATA Empty Ingresar objeto code en el editor de Debug 4x

Mensaje  Julio Caballero Sáb Feb 20, 2010 4:50 pm

Respecto a tu pregunta:

COMO INGRESAR UN CODE DENTRO DEL SYTEM DESDE EL DEBUG4X.

Ya fue respondida en el siguiente tema:

http://honradoshp.foroactivo.com/system-rpl-f11/incrustar-un-programa-code-en-un-archivo-system-t80.htm#206
Julio Caballero
Julio Caballero
Junior HP
Junior HP

Cantidad de envíos : 39
Localización : Perú
Calculadora : HP 50g
ROM : 2.09

Volver arriba Ir abajo

LIBRARY DATA Empty LIBRAY DATA

Mensaje  carloshp50 Vie Sep 03, 2010 10:16 pm

Datos de Biblioteca (Library Data)

Cuando creas una biblioteca con algún programa que guarde archivos para su uso posterior, puedes guardar ese archivo como un Library Data. Los Library Data no pueden ser manipulados por el usuario, de manera que no es fácil alterar su contenido con User RPL.

La estructura de un Library Data es la siguiente:
Prólogo DOEXT0 # 2B885 “88B20”
Cuerpo Tamaño del cuerpo5
Número de biblioteca 5
Objetos
SEMI 5“B2130”
Cualquier objeto u objetos pueden ser convertidos a Library Data.
Además, un Library Data debe contener al número de la biblioteca respectiva.
carloshp50
carloshp50
Master HP
Master HP

Masculino Cantidad de envíos : 334
Localización : Perú
Calculadora : HP 50g
ROM : 2.09

Volver arriba Ir abajo

LIBRARY DATA Empty Usa esto para crear un Library Data

Mensaje  carloshp50 Vie Sep 03, 2010 10:17 pm

Para crear un objeto Library Data puedes usar la siguiente subrutina. El argumento debe ser un compuesto cuyo primer elemento sea el número de la biblioteca como un bint y el resto de los elementos deben ser los objetos que contendrá el Library Data.

Código:
NULLNAME >LibraryData ( :: #lib ob1...obn ; -> LibraryData )
::              ( :: #lib ob1...obn ; )
FLASHPTR 002 0A5 ( "D9D2011920#####...B2130" ) ( comando ->H de L256 )
BINT11          ( "D9D2011920#####...B2130" 11 )
LAST$            ( "#####...B2130" )
"88B20"          ( "#####...B2130" "88B20" )
OVERLEN$        ( "#####...B2130" "88B20" #tamaño-5 )
#5+              ( "#####...B2130" "88B20" #tamaño )
#>HXS            ( "#####...B2130" "88B20" HXStamaño )
FLASHPTR 002 0A7 ( "#####...B2130" "88B20" "Tamañ" ) ( comando A->H de L256 )
&$              ( "#####...B2130" "88B20Tamañ" )
SWAP&$          ( "88B20Tamañ#####...B2130"  )
FLASHPTR 002 0A4 ( LibraryData ) ( comando H-> de L256 )
;

También puedes usar la siguiente alternativa más rápida, con una parte escrita en lenguaje ensamblador (extraído del comando ROMPTR 0E4 011, que es llamado por los comandos del entorno MSOLVR, Multiple Solver Equation).

Código:
NULLNAME >LibraryData ( :: #lib ob1...obn ; -> LibraryData )
::        ( :: #lib ob1...obn ; )
TOTEMPOB  ( :: #lib ob1...obn ; )
DUP        ( :: #lib ob1...obn ; :: #lib ob1...obn ; )
OSIZE      ( :: #lib ob1...obn ; #tamaño_bint+objeto+10 ) ( tamaño del LibData )
CODE
  NIBHEX 8F1466081AF018FB97601431313488B2014517481AF19818FA41458F2D760142164808C
ENDCODE
          ( LibraryData )
;
carloshp50
carloshp50
Master HP
Master HP

Masculino Cantidad de envíos : 334
Localización : Perú
Calculadora : HP 50g
ROM : 2.09

Volver arriba Ir abajo

LIBRARY DATA Empty Para conseguir los objetos del LibrayData y su número de biblioteca

Mensaje  carloshp50 Vie Sep 03, 2010 10:19 pm

Con el siguiente código puedes hacer la operación inversa.

Dado un Library Data en la pila conseguirás su número de biblioteca y el objeto u objetos contenidos en este, dentro de un objeto programa.

Código:
NULLNAME LibraryData> ( LibraryData -> :: #lib ob1...obn ; )
::              ( LibraryData )
FLASHPTR 002 0A5 ( "88B20Tamañ#####...B2130" ) ( comando ->H de L256 )
BINT11          ( "88B20Tamañ#####...B2130" 11 )
LAST$            ( "#####...B2130" )
"D9D2011920"    ( "#####...B2130" "D9D2011920" )
SWAP&$          ( "D9D2011920#####...B2130" )
FLASHPTR 002 0A4 ( :: #lib ob1...obn ; ) ( comando H-> de L256 )
;

También puedes usar la siguiente alternativa más rápida.

Código:
NULLNAME LibraryData> ( LibraryData -> :: #lib ob1...obn ; )
::      ( LibraryData )
TOTEMPOB ( LibraryData' )
CODE
  NIBHEX 14713780824D9D2014117480824119201411358D94150
ENDCODE
        ( :: #lib ob1...obn ; )
;
carloshp50
carloshp50
Master HP
Master HP

Masculino Cantidad de envíos : 334
Localización : Perú
Calculadora : HP 50g
ROM : 2.09

Volver arriba Ir abajo

Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.