News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_Bryce

New DIY Project released: The MegaROM

Started by Bryce, 15:58, 17 October 10

Previous topic - Next topic

0 Members and 3 Guests are viewing this topic.

redbox

That's great SyX, I will let PulkoMandy know I am interested.

I would get a CPC Booster but they are not available and have a lot of features I don't use.  Also, I would like the serial port to be easily accessible and not a closed architecture so that I can write my own software for it as I need it.

TFM

A couple of days ago I talked to Antitec, he will update the Booster homepage and he actually did improovements, connecting f.e. an temperature sensor and so on. But as you told, it depends what you want to do with it. I consider both of them as hot.

And with the MegaROM you know where to put your software :-)
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

erikarn

Well, I've sat down to see how the RAM mapping works but I haven't quite wrapped my head around it. From what I can tell, the bank access bits latch which 64k bank to enable; and the bank selection bits (0-3) alter which of 8 mappings are used. These 8 mappings take A14/A15 (and /MREQ, /WR and /RAMRD as enable inputs) in and then output A14, A15 to the RAM and /RAMDIS to the expansion bus to disable the on-board RAM.

That's the last bit missing from what I'd like to put together. Is that correct?

mr_lou

I've just (tried to) read through this whole thread, but I'm probably asking something that's obvious to most, or has already been asked and answered.

It works on CPC464? But somehow I can't figure out how/if I can connect it and keep my 64kb RAM expansion and floppy-drives. At the moment, the RAM expansion is plugged in first, then the floppy-drives are connected to the RAM expansion, and then I imagine this MegaROM board should have been connected to the floppy-connector? Sadly there's no plug on the floppy-connector to connect additional devices.

Am I missing something?
Do you need music for your Amstrad CPC game project?
Take a look at IndieGameMusic.com - that's where I put my tracks.

Bryce

Hi Mr Lou,
        The megaROM would need to be connected between the CPC and the RAM or between the RAM and the Floppy controller. The layout I've done has a header connector so that the user decides what type of CPC it is connected to, but you could easily make a suitable through-cable, using a 50way flat cable, with a plug on one end, a socket on the other end and the header connector in the centre, such as the one below (taken from the Inicron RRB building instructions). As far as compatibility is concerned, it should work with both the Floppy Controller and the RAM connected, but you will have to disable ROM 7 on the MegaROM (Jumper 1) to avoid it clashing with the Floppy Controller.

Also, although the 6128 polls and initialises all 16 ROMs at boot-up, the 464 only polls ROMs 7-0, so although ROMs 8-15 can be used by the 464, you would need a suitable routine to initialise them.

Bryce.

mr_lou

Hmkay, yes I would need a through-cable then.

Another question. (I'm a bit dumb when it comes to hardware stuff in general, but always wondered about ROMs).

Say I have STarKos on one of these ROMs. STarKos requires 128k ram... or does it? If loaded from ROM can it run using only 64k ram then, since the program itself isn't loaded in ram...  or is it?

The "sole" purpose of this MegaROM, is to be able to load programs fast? Or is it also to save RAM? Are we saving RAM at all by using ROM loading?

Sorry for noob questions in this thread.
Do you need music for your Amstrad CPC game project?
Take a look at IndieGameMusic.com - that's where I put my tracks.

Bryce

#81
Hi MrLou,
        A program in ROM is normally 16K (unless it spans several ROMs). They don't actually get copied into RAM (unless that's what the actual ROM program does), they are swapped one at a time with a particular address area. If a ROM is activated, the address range from &C000 to &FFFF will access the ROM instead of the Screen/AMSDOS which is normally located in this area. As soon as the ROM is de-activated the screen/AMSDOS is again located there.

During the initialisation, the CPC activates each ROM individually and if a ROM is present, it records which commands the ROM offers and builds a table of the additional available commands and in which ROM they are located (Known as the Jump Block). If the command is entered, the CPC activates the correct ROM and jumps to the correct address within the ROM, this table of commands/addresses is part of the ROMs contents. Having too many ROMs inserted can cause the Jump Block to be very large,   robbing memory from the main RAM area and may cause certain programs  not to work, because of a lack of RAM.

Bryce.

eliot

Quote from: mr_lou on 11:43, 08 November 10
Say I have STarKos on one of these ROMs. STarKos requires 128k ram... or does it? If loaded from ROM can it run using only 64k ram then, since the program itself isn't loaded in ram...  or is it?

The "sole" purpose of this MegaROM, is to be able to load programs fast? Or is it also to save RAM? Are we saving RAM at all by using ROM loading?

In fact, the Starkos Roms (as a lot of other roms you could find) are not really working in ROM but just copy the program in RAM, just like if you run it from disc, so it doesn't save any RAM. This way you can put everything in "ROM" : tools, demos, games... :)
Programs that really work in ROM and save the RAM for their own needs are rare : Maxam, Protext, Graph'os...

 



mr_lou

I see. So mostly ROMs are about avoiding the loading time? In that case, I'm probably the wrong target group, since my CPC has won the "Who-Loads-Fastest" award many times.  :)
Do you need music for your Amstrad CPC game project?
Take a look at IndieGameMusic.com - that's where I put my tracks.

Bryce

#84
Well as eliot said, programs like Maxam, Protext and BCPL really take advantage of keeping as much RAM as possible free, this has nothing to do with fast loading. If you're programming or word-processing and the program already occupies most of the RAM, it's not going to be of much use, is it? But I don't really agree with his statement, that they are rare, because there are also many very useful background ROMs, which aren't really full programs as such and don't have anything to do with fast loading. They extend the CPCs functions, such as Utopia, Programmers Toolkit or Nirvana which also take advantage of the fact that they work without occupying much RAM.

Your Floppy Controller also makes use of this, by adding ROM 7 with the Disk operating system and adding the extra commands, if this was all stored in RAM, there wouldn't be much space left for the programs.

Bryce.

mr_lou

Thanks for explaining. I think I get now, well at least more than before.

One thing I don't get though, is why doesn't anyone make a simple Flash Card reader that way then? Like my Floppy Controller gives me |dir and such, why doesn't anyone make a Flash Card ROM with socket for SD og Compact Flash with commands like |fdir and |frun? Too complicated? Too expensive?
I mean, why all the hype about these Flash Card readers that depends on the floppy-controller, rather than make a stand-alone Flash Card reader?

Sorry for going off-topic.
Do you need music for your Amstrad CPC game project?
Take a look at IndieGameMusic.com - that's where I put my tracks.

arnoldemu

Quote from: mr_lou on 16:42, 08 November 10
Thanks for explaining. I think I get now, well at least more than before.

One thing I don't get though, is why doesn't anyone make a simple Flash Card reader that way then? Like my Floppy Controller gives me |dir and such, why doesn't anyone make a Flash Card ROM with socket for SD og Compact Flash with commands like |fdir and |frun? Too complicated? Too expensive?
I mean, why all the hype about these Flash Card readers that depends on the floppy-controller, rather than make a stand-alone Flash Card reader?

Sorry for going off-topic.
My dream!!!!!

http://cpcwiki.eu/forum/index.php/topic,723.0.html


My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

andycadley

Quote from: mr_lou on 16:42, 08 November 10
I mean, why all the hype about these Flash Card readers that depends on the floppy-controller, rather than make a stand-alone Flash Card reader?
I think the biggest advantage of floppy emulators is that the device will then work on anything that uses a standard floppy disc interface. So the cost comes down because you have a much larger market to sell them to. And they potentially increase compatibility with software that's expecting to work directly with the fdc.

Bryce

Exactly Andy, reading and writing to an SD Card isn't that easy, it means having a dedicated processor to do all the FAT stuff and if it works on an Amstrad it won't necessarily work on any other 8-Bit. The Floppy controller is usually chosen, because it's one of the only standards that most 8-Bit computers stuck too, so one design fits all.

Having said that, I have a few other projects in the pipeline that aren't quite up to the |fdir / |frun, but they do get a little bit closer, dumping things to flash and reading them back without any additional EPROM Burner etc...

Stay tuned,
Bryce.

Bryce

Hi all,
     I can't remember who asked, but to whoever it was... I've now got my newly acquired 6128+ up and running and can confirm the the MegaROM works perfectly with CPC plus machines too.

Bryce.

Gryzor


redbox

Quote from: Bryce on 17:02, 14 November 10
I can't remember who asked, but to whoever it was... I've now got my newly acquired 6128+ up and running and can confirm the the MegaROM works perfectly with CPC plus machines too.

:)

ukmarkh


Bryce

Nowhere at the moment, I'm working on a new and better version. As soon as that's finished there will be a batch built. Stay tuned....

Bryce.

ukmarkh

#94
I hate having all these extra parts sitting around... would it be possible to go the extra mile and completely replace the old Plus board, and build a new board fully intergrated and similar size to the old one. Then you could simply slip this in its place. More work I know, but would basically be a like for like replacement and with all the original plus features.  ;)

Bryce

Not sure what you mean? Do you mean a plus board that fits in a standard CPC? A MegaROM that fits internally? or what?

Bryce.

redbox

Quote from: ukmarkh on 13:06, 24 November 10
I hate having all these extra parts sitting around... would it be possible to go the extra mile and completely replace the old Plus board, and build a new board fully intergrated and similar size to the old one. Then you could simply slip this in its place. More work I know, but would basically be a like for like replacement and with all the original plus features.  ;)

I (with the help of others, especially Kev) am currently trying to patch the Plus OS so that you can have the system and 4 ROMs on a 128kb cart - the space used by Burnin' Rubber might be available for 4 x 16kb ROMs.

Not a replacement for the 16 ROMs on a ROMBoard, but it might fit your more 'elegant' requirements.  If it works that is.

I personally would still love one of Bryce's MegaROMS, they look really cool, especially if a Flash-able version is made because you definitely wouldn't have this facility with a cart.

Bryce

The flash version is what I'm working on at the moment.

Bryce.

ukmarkh

#98
A megarom that fits internally  :P  or better still, a complete new system board redesigned to sit nicely in the Plus and include the Megarom built in as standard along with the SD Card. Would probably need a massive effort and collaboration for the latter to ever happen, but I'd be more than willing to buy one. 

Quote from: Bryce on 13:37, 24 November 10
Not sure what you mean? Do you mean a plus board that fits in a standard CPC? A MegaROM that fits internally? or what?

Bryce.

Bryce

#99
That would A) Cost a fortune B) Be waaay too complicated C) Difficult to source the parts D) There'd always be some people would say "Yes, but it should have this" "No it shouldn't include that" etc, etc.

But an internal MegaROM is easy, just you'd have to find suitable points on the Mainboard to solder the wires on.

Bryce.

Powered by SMFPacks Menu Editor Mod