No way to execute VR-SCRIPT MSX_LIB.H other than making a ROM.

This forum is checked by MSXVR Team. If you need to report some bug, use this forum, mantis or REPORT tool in your MSXVR machine.
Post Reply
Javi
Posts: 29
Joined: Sat Jun 11, 2022 5:14 am
Been thanked: 10 times

No way to execute VR-SCRIPT MSX_LIB.H other than making a ROM.

Post by Javi »

No hay manera de ejecutar VR-SCRIPT con MSX_LIBH que no sea creando una ROM.

Hay limitaciones en un programa VR_SCRIPT. No se puede una simple aplicación ejecutable o fichero binario que se pueda ejecutar desde por ejemplo un disquete contenido en un fichero dsk.


Example_1

http://msxvr.es/doc/wiki/mdwiki.html#!6 ... 1a7f4c7.md


He intentado lo siguiente:


Example_1.pi

Code: Select all

#include "msxlib.h"

class Example_1 partial MSXLIB_H
{
    function Init() : void
    {
        MSXLIB_Init();

        VDP_SetScreenMode(0);
        VDP_SetColor (8, 1);

        Screen_Print("HELLO WORLD!", 0, 0);
        Screen_Flush();

        while(1)
        {
        }
    }
}
make.bat

Code: Select all

as /OUT ex1.pic
as /OUT ex1.pic /ADD Example_1.pi
as /OUT ex1.pic /ADD msxlib.pi
as /OUT ex1.pic /ADD msxlib_afx.pi
as /OUT ex1.pic /ADD msxlib_bios.pi
as /OUT ex1.pic /ADD msxlib_bitbuster.pi
as /OUT ex1.pic /ADD msxlib_joystick.pi
as /OUT ex1.pic /ADD msxlib_memory.pi
as /OUT ex1.pic /ADD msxlib_music.pi
as /OUT ex1.pic /ADD msxlib_pad.pi
as /OUT ex1.pic /ADD msxlib_pletter.pi
as /OUT ex1.pic /ADD msxlib_ppi.pi
as /OUT ex1.pic /ADD msxlib_psg.pi
as /OUT ex1.pic /ADD msxlib_screen.pi
as /OUT ex1.pic /ADD msxlib_sprite.pi
as /OUT ex1.pic /ADD msxlib_string.pi
as /OUT ex1.pic /ADD msxlib_vdp.pi
as /OUT ex1.pic /ADD wyz_psg_version_1.s
as /OUT ex1.pic /ADD z80_math.pi

move *.asm ./release/

copy ex1.pic ../ex1.pi
en el entorno VR-DOS

Esto se compila y todo parece ir bien.

Pero cuando se ejecuta como,

Code: Select all

ex1.pi
resultado: peta el sistema y se resetea.





No way to execute VR-SCRIPT MSX_LIB.H other than making a ROM.

There is a limitation on a program VR_SCRIPT. We can not make simple executable app program or dsk program.


Example_1

http://msxvr.es/doc/wiki/mdwiki.html#!6 ... 1a7f4c7.md

I have tried to do it like that


Example_1.pi

Code: Select all

#include "msxlib.h"

class Example_1 partial MSXLIB_H
{
    function Init() : void
    {
        MSXLIB_Init();

        VDP_SetScreenMode(0);
        VDP_SetColor (8, 1);

        Screen_Print("HELLO WORLD!", 0, 0);
        Screen_Flush();

        while(1)
        {
        }
    }
}
make.bat

Code: Select all

as /OUT ex1.pic
as /OUT ex1.pic /ADD Example_1.pi
as /OUT ex1.pic /ADD msxlib.pi
as /OUT ex1.pic /ADD msxlib_afx.pi
as /OUT ex1.pic /ADD msxlib_bios.pi
as /OUT ex1.pic /ADD msxlib_bitbuster.pi
as /OUT ex1.pic /ADD msxlib_joystick.pi
as /OUT ex1.pic /ADD msxlib_memory.pi
as /OUT ex1.pic /ADD msxlib_music.pi
as /OUT ex1.pic /ADD msxlib_pad.pi
as /OUT ex1.pic /ADD msxlib_pletter.pi
as /OUT ex1.pic /ADD msxlib_ppi.pi
as /OUT ex1.pic /ADD msxlib_psg.pi
as /OUT ex1.pic /ADD msxlib_screen.pi
as /OUT ex1.pic /ADD msxlib_sprite.pi
as /OUT ex1.pic /ADD msxlib_string.pi
as /OUT ex1.pic /ADD msxlib_vdp.pi
as /OUT ex1.pic /ADD wyz_psg_version_1.s
as /OUT ex1.pic /ADD z80_math.pi

move *.asm ./release/

copy ex1.pic ../ex1.pi

under VR-DOS

it compiles and everything is ok.

But when it is executed as
ex1.pi

crashes the system and resets.
msxvr
Posts: 65
Joined: Mon Sep 27, 2021 11:10 am
Has thanked: 6 times
Been thanked: 59 times

Re: No way to execute VR-SCRIPT MSX_LIB.H other than making a ROM.

Post by msxvr »

Hola,

Creo que no se ha entendido bien el concepto de VR-SCRIPT Nativo y de VR-SCRIPT compilable.
El Nativo permite ejecutarse al vuelto. Ejecutando el script directamente en VR-DOS por ejemplo.
El Compilable es una plantilla para poder convertir esos scripts a código máquina de una máquina virtual y eso genera un archivo ejecutable por una máquina virtual, por ejemplo, una ROM.

Si miramos los MAKE.BAT que hay en el paquete de MSXLIB y en la documentación de la wiki, podemos observar lo siguiente:

Code: Select all

as /OUT example_1.rom /CODE 0x4000 /DATA 0xC000 /CPU Z80 /INCLUDE ../src ../crt/msx_rom_crt.pi ../msxlib.lib example_1.pi
Como se puede ver, el archivo de salida es un .ROM.

Ciertamente, que el sistema se cuelgue al ejecutar un script "no nativo", eso algo que hay que solucionar. Pero el uso que estás dando a la MSXLIB no es el correcto.
Javi
Posts: 29
Joined: Sat Jun 11, 2022 5:14 am
Been thanked: 10 times

Re: No way to execute VR-SCRIPT MSX_LIB.H other than making a ROM.

Post by Javi »

No quiero usar una ROM de en una maquina virtual.
Quiero una app en el escritorio del MSXVR.


I don't want to use a ROM on a virtual machine.
I want a app in the desktop
msxvr
Posts: 65
Joined: Mon Sep 27, 2021 11:10 am
Has thanked: 6 times
Been thanked: 59 times

Re: No way to execute VR-SCRIPT MSX_LIB.H other than making a ROM.

Post by msxvr »

MSXLIB_H solo sirve para generar ROMS o archivos de ejecución en máquinas virtuales.

Para usar VR-SCRIPT nativo has de heredar o de DOS_Program, GL_Program, BASIC_Program, View_Program o Engine_Program según lo que necesites.
En la wiki tienes ejemplos y tutoriales de uso de todo esto.

Si me indicas que quieres hacer, puedo intentar ayudarte a enfocar lo que necesitas para comenzar.
Post Reply