Development with MSX BASIC

صفحة 5/9
1 | 2 | 3 | 4 | | 6 | 7 | 8 | 9

بواسطة ARTRAG

Enlighted (6923)

صورة ARTRAG

04-06-2011, 22:38

i has to do with the endline delimiter
try in notepad++ to see the hidden characters

بواسطة baltasarq

Rookie (27)

صورة baltasarq

05-06-2011, 10:30

@Artrag, I was able to correctly load the room descriptions from disk (I used ScITE). Unfortunately, it seems that BASIC does a lot of trashing while loading/creating strings, and therefore I need at least a clear 7000 in order for the loading to be completed. However, this does not leave enough room for the rest of the data structures.

My last shot is to change all DIM A(...) of integer numbers to DIM A%(...), abandon the disk (and therefore the real machine), and use an emulator and a tape manager (I found MSX Taper, though I'm not able to make the produced tape to load in the emulator). The extra 5k I will obtain should be now enough.

بواسطة baltasarq

Rookie (27)

صورة baltasarq

05-06-2011, 11:44

Okay, I need more help. I have transferred the ASCII BASIC asalto.bas file to a CAS file asalto.cas by using MSX Taper. Then I run BlueMSX, holding down the SHIFT key, then type RUN "CAS:", CLOAD... and nothing works. All I get is: Device I/O ERROR.
I have tried with MSX, MSX-Spanish, and even with MSX2, but it does not seem to work. Any help?

Thanks,
Baltasar

بواسطة hap

Paragon (2042)

صورة hap

05-06-2011, 12:38

zip + upload asalto.bas somewhere and you're sure to get helped out

بواسطة ARTRAG

Enlighted (6923)

صورة ARTRAG

05-06-2011, 13:06

First try to boot while CRTL is pressed
This will free up to 3KB and disable any second (virtual of physical) disk drive
Do not move to cassette
Another try is to load the descriptions "on fly"
You can use the array index to seek the appropriate "record" in the txt file on the disk
I dis it once (about 30 yeas ago) so it can be done

بواسطة baltasarq

Rookie (27)

صورة baltasarq

06-06-2011, 09:31

Thank you all for your help. I've uploaded the program to:

http://caad.es/baltasarq/if/asalto/msx_asalto.zip

There are two files there:

casalto.bas ACII Basic program
asalto.cas MSX Tape containing the above file

Please note that there are probably errors: I have not been able to make the program to get to line 110, after all the data structures have been created. These probable errors are not the matter: the matter is to make it fit inside the MSX Basic memory.

The room & objects descriptions have been changed to a big ON...GOTO, so they only consume memory once. Currently the problem is that I'm not able to load from tape the CAS file.

بواسطة chalky

Expert (65)

صورة chalky

06-06-2011, 11:57

I suspect the problem is with the MSX Taper conversion process as I have successfully loaded "casalto.bas" into blueMSX, csave'd it to a .cas image, rebooted (CTRL) and then reloaded it from the .cas file without problems (there was approx. 3.5kb [from 24990 bytes] free after loading). Every attempt to load "asalto.cas" resulted in an I/O error.

بواسطة hap

Paragon (2042)

صورة hap

06-06-2011, 12:15

here's a working .cas with tokenized basic asalto, this link is temporary:
http://crap.tsk-tsk.net/asalto2.zip

created with meisei:
- file -> media -> tape -> new -> save a new tape
- rightclick on <free block> -> open "casalto.bas" -> load it with load"cas:"
(you'll need to do a bit more work if you want a tokenized file)

بواسطة cax

Prophet (3740)

صورة cax

06-06-2011, 12:23

Just as said above - after pressing CTRL (24990 bytes free) it perfectly loads from floppy (3567 bytes free).
Now you can csave it (after csave, in BlueMSX you should do File->Cassette->Save cassette image as) and then cload, which leaves 7392 bytes out of 28815.

After that you have to fix some syntax errors...

Also, lines 5070-5077 have almost the same text, you can save here about 300 bytes.

بواسطة NYYRIKKI

Enlighted (6016)

صورة NYYRIKKI

06-06-2011, 13:05


Please note that there are probably errors: I have not been able to make the program to get to line 110, after all the data structures have been created. These probable errors are not the matter: the matter is to make it fit inside the MSX Basic memory.

Indeed it seems to be full of errors:
- Problem with read & data lines
- THEN missing from line 5000
- GOTO to wrong line in 9995
- line 8010 does not exist in 110
- Incorrect MID$-function usage (first letter should always be pointed with number 1)
- Reserved words used in variable names
- long variable names with same first two letters

I stopped examining here as it really seems like there are plenty of things to fix before it will run, but indeed it loads even with diskdrive enabled. I don't see problem here.

صفحة 5/9
1 | 2 | 3 | 4 | | 6 | 7 | 8 | 9