Old Star Trek game, italian language, bugfixed!

Page 2/3
1 | | 3

By Emily82

Rookie (28)

Emily82's picture

07-07-2019, 03:32

Ok guys i understood why this game didnt work on msx2. Its just memory problem. Msx2 has got floppy drive wich consumes some ram. Considering this game uses only 28k of basic ram this is a problem.
To fix it just hold shift key while booting your msx2 and you will disable floppy drive controller.

Load normally the game and all will work fine Wink

By Manuel

Ascended (15815)

Manuel's picture

07-07-2019, 10:06

Ah, so it's not MSX2 specific, but disk drive presence specific. Perhaps you can add a free memory check at the start that warns the user if free memory is too low?
It would be great if the game could be adjusted to also load from disk, though...

By Emily82

Rookie (28)

Emily82's picture

07-07-2019, 16:06

Yea i could add such warning considering that the game uses 24k of basic userspace.
To see it, i did free(0) and i saw there are only 4k of free memory after loading the game.
I would like to save it to disk but to do so it would be needed to use Nextor Basic or something allowing me to use all msx ram.
Msx1 doesnt use memory mapper but it still got 32k unused ram there, normally msx1 should have 64k ram.
For msx2 there is the memory mapper and at least 128k ram.
So here there is need for 2 versions for the game one for msx1 and one for msx2.

If i have time i could try this.

By Jipe

Paragon (1366)

Jipe's picture

07-07-2019, 16:31

for saving on disk : make a new dsk with DISKMGR name USS
load USS program CAS: on BlueMSX with push CTRL
insert the Drive USS and save on it by SAVE"USS"

By Emily82

Rookie (28)

Emily82's picture

07-07-2019, 16:44

Yes this is simple, the problem its that it will not work for lack of userspace memory.

By Emily82

Rookie (28)

Emily82's picture

07-07-2019, 17:11

Ok i did fre(0) checking so if there isnt enough memory the program will just print "Not enough memory" message.

Here is the link to the last update
https://drive.google.com/file/d/1JjNZNiPsFUFKNgW3hXnIVZSpziHbeeQ1/view?usp=sharing

By Manuel

Ascended (15815)

Manuel's picture

07-07-2019, 21:36

I tried that last version on a system booted with CTRL pressed (after removing your memory check) and it seemed to run fine. So I think your check may be too strict. The system still had 1893 bytes free in my test, after loading the game. Without using CTRL to boot, it only had 335 bytes free... that is indeed very limited.

Another thing could be a program that optimizes the basic program. It could combine lines, remove spaces or REM statements, etc.. to save memory.

By Emily82

Rookie (28)

Emily82's picture

07-07-2019, 22:11

Whats the holding CTRL for instead of SHIFT?
Then i dont know programs optimizing basic code, do you have the name of some to suggest?

By tfh

Paragon (1842)

tfh's picture

07-07-2019, 22:14

Emily82 wrote:

Whats the holding CTRL for instead of SHIFT?
Then i dont know programs optimizing basic code, do you have the name of some to suggest?

CTRL -> Boot MSX with ONE drive
SHIFT -> Boot MSX without drives
Even booting with one drive, clears up memory.

By Emily82

Rookie (28)

Emily82's picture

07-07-2019, 22:18

Thx for explanation, now i change the fre(0) check down to 1500 bytes so it can work with 1 active floppy drive, cool.

Page 2/3
1 | | 3