News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_TFM

MegaFlash ROManager as single 16 KB ROM

Started by TFM, 03:26, 26 September 11

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

norecess

QuoteUsed it with ROM-RAM-Box, SF2 also. There were never problems. That's all I can say.


It actually does conflict with Utopia (cf. HELPR command), that I use regularly to see how large is a ROM in RAM (cf. memory usage of the ROM in RAM). Or did I miss anything special in my setup ?

TFM

Quote from: norecess on 20:27, 29 September 11

It actually does conflict with Utopia (cf. HELPR command), that I use regularly to see how large is a ROM in RAM (cf. memory usage of the ROM in RAM). Or did I miss anything special in my setup ?

Well, I must say I never have Utopia "on board", because it's not soooo compatible to others. And it's functions are in some OS, that I use more often ;-) So I can't tell. But a good point to mention.

What happens if you press space on RESET, do you still have problems with utopia?
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Gryzor

As with Utopia, does it mess with Maxam's |Help command?

norecess

Yeah sorry I meant |HELP command.


No problem with RESET stuff.

TFM

 
My "tick" of work around is to install the ROM of which the RSX commad shall be used in the lowest position.

Ok an example: Maxam and utopia both conatin the !HELP command.

Now, let's assume Maxam is located at ROM positioin 4 and Utopia at positon 8, then the !HELP command will be used from the Maxam ROM, because it's ROM number is lower.

But...

Now, let's assume Maxam is located at ROM positioin 4 and Utopia at positon 2, then the !HELP command will be used from the Utopia ROM, because it's ROM number is lower.

Ok? I hope this helps, but maybe I missed the point.
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

norecess

No it's something else. You should try by yourself. :)


Actually, Arnor's sourcecode is buggy when BOOSTER is present. You have this |HELP command from UTOPIA that allow you to list ROMS (but also gives precious info about memory usage). When BOOSTER is present, then it only reports... ROM 0.  (BASIC)


I'm not sure if you can do anything for it.

Gryzor

What NoRecess said; Booster completely breaks the |Help command for some reason, it's not an issue of priority; it just won't work, even if there's only one ROM with this command.

TFM

I tried that on emlators, WinCPC has no problems. WinApe crashes. Strange effect.
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Gryzor

I haven't tried on an emu, but it's what my CPC does :)

TFM

Quote from: Gryzor on 05:52, 03 October 11
I haven't tried on an emu, but it's what my CPC does :)

Can you try to use the HELP command of another ROM (by placing the ROM at ROM position 1)?. Maybe the HELP command of some ROMs has a problem, but not the HELP command of others? Just an idea :-X
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

redbox

I'm pretty sure [nb]read "guessing", but it's an informed guess[/nb] that the Utopia HELPR command walks the ROMs, and it does this by using the firmware.

The Booster ROM patches said firmware to allow access to 31-15 as well, but I think it's a non-standard patch.  Therefore, the Utopia commands won't work.

I don't completely understand the Booster ROM yet, but when I do it's probably something that can be fixed.

TFM

Quote from: redbox on 16:49, 04 October 11
The Booster ROM patches said firmware to allow access to 31-15 as well, but I think it's a non-standard patch.  Therefore, the Utopia commands won't work.

There is no 'standard' way to patch  ;) :laugh: . And since the Booster is the only one actually capable of doing it, well, it makes it the standard. The problem is that Utopia is just not capable to adapt to new situatons. The programmers never expected to find more than 16 ROMs.
You may be able to get Utopia working with 16 ROMs, but for anything else you have to patch Utopia not the Booster  :)  The question is... is it actually worth to invest time into this?
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

norecess

No.. perhaps it's the MegaFlash that miss a feature, cf. only allow 16 ROMs at a time, and a switch would make ROMs 16 to 31 the ones from 0 to 15.

redbox

Quote from: norecess on 17:57, 04 October 11
No.. perhaps it's the MegaFlash that miss a feature, cf. only allow 16 ROMs at a time, and a switch would make ROMs 16 to 31 the ones from 0 to 15.


It's the OS that restricts it to 16 ROMs, not the MegaFlash.


You can make a hardware mod to alter the page-in range like you've said, but you'd still have to patch the OS to scan the new range.

Bryce

I did consider having this type of feature when I was developing it. The MegaROM does have similar features, but on the MegaFlash it would have meant adding another IC plus the jumpers, which raises the price and makes the PCB quite a bit bigger too. So I decided the feature wouldn't be used by enough users to justify everyone else having to foot the bill for a feature they don't use. I could make a schematic and instructions to mod the MegaFlash to have this feature, but does anyone really want/need it?

Bryce.

redbox

Quote from: Bryce on 20:24, 04 October 11
I could make a schematic and instructions to mod the MegaFlash to have this feature, but does anyone really want/need it?


The only time I could see really using it would be:


- Testing software/OS Patches to access the entire ROM range
- If you're using an alternative OS (maybe FutureOS)


It would be interesting to see how it's done from an academic point of view, but not much more... I think you made the right choice in the development of the MegaFlash  :)


PS - I put a bad ROM image in mine the other day and the CPC wouldn't boot.  So I unplugged it, turned the CPC on, plugged it in and then ran the management software to delete the bad image.  Is this okay, or officially a bad idea...?!

Bryce

Well contrary to all those claims that "It could damage your CPC / expansion etc." It's not actually as bad as you might think. It might crash the CPC on occasions, but it's extremely unlikely that you would damage the hardware. It doesn't cause any spikes or short circuits, so the worst it could do is change a 1 to a 0 or a 0 to a 1 on some bus / data line or a control signal, which might crash the CPC, but nothing more.

Bryce.

redbox

Thanks Bryce.

I'm such a good programmer it doesn't happen often ;)

But when it does, I won't worry too much now!

norecess

QuoteIt's the OS that restricts it to 16 ROMs, not the MegaFlash.


Don't forget that this OS is used by, huh, 99.99% of CPCs in the world? :)

SyX

Well, other option could be having a key press check in the initialization of rom in the position 15, and if you have the key R pressed, then launch the ROManager for parking the problematic roms. It could use another key to not initialize the upper roms, etc ...

redbox

Quote from: SyX on 14:29, 05 October 11
Well, other option could be having a key press check in the initialization of rom in the position 15, and if you have the key R pressed, then launch the ROManager for parking the problematic roms. It could use another key to not initialize the upper roms, etc ...


Now this could be a really smart idea for a 'developer' ROM.


Is it possible to write a ROM (that you put in position 15) that stops the OS walking all other ROMs...?


TFM

#46
Quote from: redbox on 20:43, 04 October 11
- If you're using an alternative OS (maybe FutureOS)

Not really, FutureOS need one ROM between 0 and 15, the other three can have higher numbers. If you put ROM A at positon 0, then you activate the autostart feature.


Quote from: norecess on 21:14, 04 October 11
Don't forget that this OS is used by, huh, 99.99% of CPCs in the world? :)

Only in your household ;-)


Quote from: SyX on 14:29, 05 October 11
Well, other option could be having a key press check in the initialization of rom in the position 15, and if you have the key R pressed, then launch the ROManager for parking the problematic roms. It could use another key to not initialize the upper roms, etc ...

Well, the Booster routine is ommitted if you press Space. The idea is good, but CPC-OS probably makes trouble here. However I add the "R" to my 2DO list.


Quote from: redbox on 15:07, 05 October 11
Is it possible to write a ROM (that you put in position 15) that stops the OS walking all other ROMs...?

You can use the park ROM option of the ROManager. It's made for such purposes.
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

redbox

Quote from: TFM/FS on 17:47, 05 October 11
Not really, FutureOS need one ROM between 0 and 15, the other three can have higher numbers.


What I meant to say was it could be useful if you were to write your own OS.  The only one I could think of as an example was FutureOS  :)


Quote from: TFM/FS on 17:47, 05 October 11

You can use the park ROM option of the ROManager. It's made for such purposes.


If you've put bad ROM code into the MegaFlash, it could stop your CPC from booting which means you can't get into the ROManager to park the ROM. 


So if you're testing ROMs, putting in a R keypress or something to halt the walk would be very useful as then you can skip your buggy ROM and boot the CPC as normal.

TFM

Quote from: redbox on 19:49, 05 October 11

What I meant to say was it could be useful if you were to write your own OS.  The only one I could think of as an example was FutureOS  :)

Just mentioned it, why not provide some information when time is right :-)


Quote from: redbox on 19:49, 05 October 11
If you've put bad ROM code into the MegaFlash, it could stop your CPC from booting which means you can't get into the ROManager to park the ROM. 


So if you're testing ROMs, putting in a R keypress or something to halt the walk would be very useful as then you can skip your buggy ROM and boot the CPC as normal.

I take this together.... Ok, assuming you prevent a ROM walk, then you have no DOS. Well, in this case you need some ROM management to delete the "bad" ROM. So maybe it's better to start into the ROM management, then to inhibit the ROM walk. Well, a complex topic, we can assume a variety of things to go wrong.
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Gryzor

Any other ROMs with a similar |Help command I could test with Booster?

Powered by SMFPacks Menu Editor Mod