ma-20 clone (msx2 cartridge)

Page 4/9
1 | 2 | 3 | | 5 | 6 | 7 | 8 | 9

By l_oliveira

Hero (529)

l_oliveira's picture

29-03-2016, 08:32

ARTRAG wrote:

For msx1 games this is a totally dull discussion, just unplug that stuff and use your msx1.
About Uridium, sorry but the 16k where bios is have to be replaced by the game code.
Swapping the bios in and out all the time is a terrible overhead.

You don't need to keep the BIOS on, you just need to read the value from the BIOS and then keep it for your own program to use. They knew that video is something too critical for people to keep relying on them for access. Even then Konami still use BIOS for a lot of things. And while your argument about this discussion being dull might feel right for you, put yourself on the skin of your user, which would need to unplug his upgrade every time he were to run your game. He would get fed up and would eventually stop using your game. Perhaps that's why most MSX1 games from Konami actually work with this thing... Wink

JohnHassink wrote:

Regarding your technical explanation - I'm not going to lie and just tell you that it boggles my mind (which is a polite way of saying, I still don't understand what you're talking about).

All I said is that the MSX standard defines that the VDP address port is changeable (manufacturer can change it at will but must indicate it on the BIOS) and that programs MUST read a set position on the BOOT ROM to figure out which I/O port the VDP is at. For that to work, the Z80 has a indirect version of the IN/OUT instructions which take the value for the hardware address from the C register. This kit exploits that feature of the standard to upgrade the video chip on the computer. This is really easy to understand, I hope. All MSX2 Konami games and most of the MSX1ones do that and will have the video output happen on the new VDP added by this kit.

MSX was really revolutionary in that regard (flexibility) but lack of solid programming information outside Japan really impaired the machine success.

By ARTRAG

Enlighted (6250)

ARTRAG's picture

29-03-2016, 09:59

I am confident that among the millions of users of m-20 stuff, the those who have an msx1 game of mine will find their way to plug it in a msx1.
Btw as you are building a new card, why not use 0x98 ports?
Isn't there any way to turn the tms in a silent mode?

By NYYRIKKI

Enlighted (5391)

NYYRIKKI's picture

29-03-2016, 10:59

I'm kind of in the middle... On one hand it is great that we have this changeable VDP I/O port, but indeed it is not very practical to take care of it each time you write to VDP. The overhead is not that huge in a normal case... you lose some time and more importantly that C-register that you could use for storing some more useful information. Even ARTRAG knows that he could copy the values to RAM or allocate some more RAM for support routines that would be then patched with values from ROM... But question is, is it worth the trouble? really? If the reason is that MA-20 exists, then it sounds a bit like "Don't cover roads with asphalt, it is bad for horse shoes". TBH I've not seen one live ever although I've met quite a few collectors... Not to mention that MA-20 it self already throws out the MSX standard from the window... Not because it wants to but because MSX1 computers were not meant to be upgraded like this, so it has to improvise a bit.

If this MA-20 clone becomes more popular then it probably make it more important to take this extra trouble but currently I can't see this very interesting either.(Although I'm interested in getting one of these cartridges) Also patching a game to work from different port later is not usually that big of an issue. I've even made an AI to do that for me in order to play these badly behaving MSX games on SVI-328. From user point of view it is easy to say "make it 100% standard" but to developer it sounds like "Use your valuable free time that you newer have enough to support that last <0.1%"

By l_oliveira

Hero (529)

l_oliveira's picture

29-03-2016, 13:38

ARTRAG wrote:

I am confident that among the millions of users of m-20 stuff, the those who have an msx1 game of mine will find their way to plug it in a msx1.
Btw as you are building a new card, why not use 0x98 ports?
Isn't there any way to turn the tms in a silent mode?

If you connect a new VDP to the existing (0x98) port without disabling the existing device, there will be a I/O conflict and neither will work properly. That's why. If there were any way of putting the internal VDP into some sort of "silent mode" (there isn't, all you can do is stop it from rendering video) writes intended to the MSX2 VDP would wake it up.

Also that's why internally installed MSX to MSX2 upgrades involve the removal of the original MSX1 VDP.

By ARTRAG

Enlighted (6250)

ARTRAG's picture

29-03-2016, 15:38

Keeping e.g. the reset line low?

By ARTRAG

Enlighted (6250)

ARTRAG's picture

29-03-2016, 15:39

.

By l_oliveira

Hero (529)

l_oliveira's picture

29-03-2016, 16:00

ARTRAG wrote:

Keeping e.g. the reset line low?

That would keep the whole MSX in a halted state.

By NYYRIKKI

Enlighted (5391)

NYYRIKKI's picture

29-03-2016, 16:10

Yes, I can imagine that someone can easily build a switch to original VDP reset line inside the computer. Therefore I wish that the cartridge will have a dip switch in order to make it work also on default I/O ports if user is more into hacking.

By l_oliveira

Hero (529)

l_oliveira's picture

29-03-2016, 17:04

NYYRIKKI wrote:

Yes, I can imagine that someone can easily build a switch to original VDP reset line inside the computer. Therefore I wish that the cartridge will have a dip switch in order to make it work also on default I/O ports if user is more into hacking.

Yes, it has been done before:
http://www.basshp.msxall.com/ct80msx2.html
and
http://www.basshp.msxall.com/80plus.html (this one has the VDP at port 0x88 because the MSX engine on that computer has an embedded VDP which cannot be disabled)

But that requires modifying the computer internally. And it completely defeats the purpose of this thing, which is be plug and play, preserving the original state of the base MSX1 computer it is being used with. :)

By NYYRIKKI

Enlighted (5391)

NYYRIKKI's picture

29-03-2016, 17:28

l_oliveira wrote:

But that requires modifying the computer internally. And it completely defeats the purpose of this thing, which is be plug and play, preserving the original state of the base MSX1 computer it is being used with. Smile

Well, it depends of the buyer... Some person can think that he can sure cut a wire, put a switch and drop in new ROMs, but building in something like complete video board + VRAM + connectors is way too much work. I think putting in this possibility (I saw FPGA, so should not be a big deal) can make this great tool for debugging internal MSX error conditions as well.

Page 4/9
1 | 2 | 3 | | 5 | 6 | 7 | 8 | 9