BMMS (Bigger Memory Mapper Selector)

Page 4/5
1 | 2 | 3 | | 5

By zeilemaker54

Master (228)

zeilemaker54's picture

23-12-2018, 14:31

gdx wrote:

Does MSX-DOS2 not already select itself the largest Mapper? If this is not the case, an MSX-DOS2 version will be required but I'm working on the MSX-DOS1 version first. After I will see if it is necessary.
Current BMMS works from Basic. MSX-DOS1/2 can run next but I not sure the DOS2 perfectly works after. I can not test all the possibilities and BMMS is not intended for DOS2. It is for this reason that I ask for feedbacks.

A normal MSX-DOS2 always selects the last memorymapper found with at least 96 KB. The memory mapper search begins at slot 0 through slot 3. So if a memorymapper of 128 KB is in slot 3-3, that mapper is always selected, even if a memorymemory of 4096 KB is in slot 1.
The MSX-DOS2 of the Turbo-R has the same approach, but selects a memorymapper (when found) in slot 0 or 3 with priority (because of the faster access to these slots).

By NYYRIKKI

Enlighted (5172)

NYYRIKKI's picture

23-12-2018, 15:14

zeilemaker54 wrote:

A normal MSX-DOS2 always selects the last memorymapper found with at least 96 KB. The memory mapper search begins at slot 0 through slot 3. So if a memorymapper of 128 KB is in slot 3-3, that mapper is always selected, even if a memorymemory of 4096 KB is in slot 1.

This is not true. You can easily verify on an emulator that the largest one is always selected as primary mapper (in case of MSX2)

By hit9918

Prophet (2825)

hit9918's picture

23-12-2018, 15:48

@gdx
about this habit of not doing it on the TurboR. imagine this story: one day a TR user ran out of mem. he thought "oh thank goodness, I found a nice BMMS tool". and then that tool is explicitely written to fail on the TR Big smile

the tools desicion "if it is a TR then I do nothing" should be taken out. the desicion could be done by an autoexec.bas.

Quote:

I can add a condition to avoid looking for the mapper when the ROM-Disk 2.xx is present.

it more and more stops being a tool that can move the sysarea.

By Giangiacomo Zaffini 2

Expert (117)

Giangiacomo Zaffini 2's picture

23-12-2018, 16:26

Still I don't get the full picture here (to say the least), but I would like to add MSX2/MSX2+ ( unlucky Panasonic ones with MSX-engine multi-chip module [McM] ) in this Memory Mapper discussion.
I have a Pana MSX2+ and when I cold Power-On it, it shows 512kB of RAM (because it is modded) and only after a reset with Reset button it shows 1024kB of RAM (the other 512kB comes from MFR in slot 1). So there's something happening when selecting just one or more than one Memory Mapper.

By gdx

Prophet (2558)

gdx's picture

23-12-2018, 16:56

This is a MFR problem. It is too slow for its RAM to be displayed at startup but its RAM is taken into account by the system.

By NYYRIKKI

Enlighted (5172)

NYYRIKKI's picture

23-12-2018, 17:26

Giangiacomo Zaffini 2 wrote:

Still I don't get the full picture here (to say the least), but I would like to add MSX2/MSX2+ ( unlucky Panasonic ones with MSX-engine multi-chip module [McM] ) in this Memory Mapper discussion.
I have a Pana MSX2+ and when I cold Power-On it, it shows 512kB of RAM (because it is modded) and only after a reset with Reset button it shows 1024kB of RAM (the other 512kB comes from MFR in slot 1). So there's something happening when selecting just one or more than one Memory Mapper.

Please try to upgrade latest firmware to your MFR. I have a faint memory that something was done to this problem in the past. The nature of this problem is indeed that MFR memory mapper "powers on" more slowly than your computer.

By Manel46

Champion (374)

Manel46's picture

23-12-2018, 18:19

NYYRIKKI wrote:

Please try to upgrade latest firmware to your MFR. I have a faint memory that something was done to this problem in the past. The nature of this problem is indeed that MFR memory mapper "powers on" more slowly than your computer.

You're right. This happened to me with my TR ST extended to 512 Kbs of ram plus the MFR. I think that since the last update I have already calculated the 1024 Kbs correctly. Download version 1.19 in https://www.msxcartridgeshop.com/

By Giangiacomo Zaffini 2

Expert (117)

Giangiacomo Zaffini 2's picture

23-12-2018, 18:28

Thank You gdx, NYYRIKKI and Manel46 ! Very quick and useful suggestions ! I will do it. Grazie. Cool

By saccopharynx

Expert (128)

saccopharynx's picture

24-12-2018, 01:20

Grauw wrote:

With Nextor you can keep the “4” key pressed during boot-up to make it select the biggest mapper as primary, rather than the internal one.

About read-back, I haven’t tested myself but the wiki says they don’t read back from the external mapper. They use the same MSX-ENGINE, so that’s why probably.

However since the turboR has either 256K or 512K of memory, I can imagine it does not matter as much. I think the biggest use case is European 128K games, and those should have no (mapper) problems on a turboR. For cracked games, those are a thing of the past if you ask me, there are plenty of cartridges like the MegaFlashROM that you can use conveniently to play the original ROMs.

I have tested the read-back capabilities quite a lot recently, and the reason why I am asking is because I am not seeing the same behaviour when I compare MSX2+ vs MSX TurboR, as it should be according to the wiki. I have a cracked version of Nemesis 3 that requires 512Kb and it reads the mapper registers. However, it perfectly runs on a Panasonic FS-A1ST with 256Kb (internal mapper connected to - Slot/Subslot 3:0) and 512Kb (MegaFlashROM SCC +SD external mapper connected to Slot/Subslot 1:2) when I select the external mapper under MSX-DOS1.

This technically means that either the OpenMSX xml configuration file for Turbo R machine or the wiki specification is incorrect.

The xml file for MSX2+ says:

< MapperReadBackBits > 2 < /MapperReadBackBit s>

However, for Turbo R:

< MapperReadBackBits > 5 < /MapperReadBackBits >

Could somebody please confirm this?

Regarding cracked games using MegaFlashROM, it is just a matter of preference. I do not really flashing a ROM each time a want to play a game, so I use cracked version to pick whatever I want to from the SD. However, I understand the approach offered by Carnivore2 is better with the possibility of flashing several ROMs.

By Grauw

Enlighted (7840)

Grauw's picture

24-12-2018, 01:48

The difference in behaviour is due to the number of mapper readback bits. However the remaining bits may still be blocked as the wiki says, you can’t test this with your Nemesis 3 crack because those 5 bits correspond to 512K (even on the 256K model the mapper stores 5 bits).

You can easily test with a small Basic test program though, while having a mapper > 512K inserted:

? INP(&HFF)

The number printed indicates the number of bits read back on a system with bus pull-ups (most), since page 3 is always set to mapper segment 0. The values mean: 0: 8 bits (4096K), 128: 7 bits (2048K), 192: 6 bits (1024K), 224: 5 bits (512K), 240: 4 bits (256K), 248: 3 bits (128K), 252: 2 bits (64K).

I just inserted my 2048K mapper in my turboR GT, the reported value is 224, on my CX5MII it’s 128.

So, the information on the wiki and in openMSX is correct.

Page 4/5
1 | 2 | 3 | | 5
My MSX profile