News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_wilco2009

Hi to all

Started by wilco2009, 13:19, 11 September 13

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

wilco2009


As you can read in the topic, hi to all.


I'm a spectrum user, but one month ago I bought two broken CPC464.
I have repaired one of them, and I'm discovering the cpc world.


The first thing that I did is to build a MEGAROM interface, and I'm totally suprised by the possibilities. In fact now I'm building some MEGAFLASH interface units with a group of friends.



Everything is ok with it, but I have a doubt. Why some ROMs are bigger than 16Kb if are tagged as only one rom in the ROMList: ROM List - CPCWiki
For instance the size of Chuckie Egg is 17Kb http://www.cpcwiki.eu/imgs/b/b0/EGGRSX.ROM


How can I to burn it in a 16kb segment.?

redbox

Quote from: wilco2009 on 13:19, 11 September 13
Everything is ok with it, but I have a doubt. Why some ROMs are bigger than 16Kb if are tagged as only one rom in the ROMList: ROM List - CPCWiki
For instance the size of Chuckie Egg is 17Kb http://www.cpcwiki.eu/imgs/b/b0/EGGRSX.ROM
How can I to burn it in a 16kb segment.?

It probably contains an AMSDOS header, which is the file system used on CPC discs.

Remove the first 128 bytes (header) and the ROM should be 16kb (16384 bytes) which can be burnt.

Bryce

Hi and welcome wilco2009,

I'd give you several likes if I could, just for chosing my hardware to build first. Post some pictures of the hardware please, I always like to see new versions :)

Regarding the ROM size. If the raw file in a hex editor is larger than 16384, then it has a header. Just remove the first 80H bytes and it should work fine.

Bryce.

wilco2009

#3

Thanks you very much for your fast reply, for your wellcome and for your help.


First, I'm sorry for my english.


Really the first thing that I did was to build a ROM interface like the interface one for spectrum. I didn't knew nothing about ROMs in Amstrad CPC, but I saw the bus is very similar to the spectrum bus, and I designed and make an spectrum like interface for CPC.


After that, while I was reading cpcwiki,  I understood that this kind of interface is only useful for lowerROM and ROM0, but CPC have a lot more possibilites talking about ROMs, and I decided to built a MEGAROM interface as a prototype.


After I was sure that I understood your schematics (I like to understand all that I build), I redrew your schematic with Eagle, and I rerouted the board, adding a very little modification to let me use 512Kb EPROM with two sets of 16 ROMs, selectables by a switch.


After test it and enjoy it I decided to go a step forward and build a MegaflashROM interface with some friends, sharing the cost of the board and components to reach a more professional finish.


I have purchased all the components and redrawn the circuit on Eagle, adding the possibility to use both PLCC or DIP flash chip, and I resized it to make possible to use a standard box of 60x100.


At the end the cost of each kit, with board, components, ZIF and box is 16.45€ (I don't like to earn nothing with it), and probably I send today to the files to seedstudio.com to be built.


Below you can see pictures of the lowerROM and MEGAROM interface and the schematics and the board of the MEGAFLASH interface.


LowerROM interface









MEGAROM


Back and front board sides printed, ready to be transferred






Home made board



welding components



Final result



interface fitted to the CPC



MEGAFLASHROM


This is de Box that I purchase to use





Board ready to be sent to seedstudio.com

Joss

Welcome here too Wilco :)  I give you a "like" too in the name of Bryce  :D

wilco2009

Hi Joss!, Nice to see you. I didn't expect to see you here.   ;)

Bryce

Hey, really nice work. I never did the MegaROM layout in Eagle, but the MegaFlash was completely done in Eagle, so if you need any of the original files let me know. The MegaFlash was also made to fit in a particular box, but with different dimensions. If you need any other info regarding the hardware workings of the CPC, then send me questions in a PM. It's very similar to the Spectrum in some ways, but very different to the Spectrum in other ways.

Bryce.

wilco2009

Thank you very much Bryce, could be very interesting to take a look of your files.


I think I understand the logic of the hardware, but I don't understand the logic of the software in depth.
I understand the main topics, but I'll not be able to make a program to run on it.


For example, How can I initialise manually ROMs from 8 in a CPC464?


How can I convert a conventional program to run in a ROM?. Probably making a loader and copying the content in RAM?


Do you have some utilities to do it automatically?

TFM

Very welcome here  :)
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Bryce

I only do the hardware, software isn't really my thing, but there are many here who can answer all those questions for you.

Bryce.

wilco2009

Thank you very much again Bryce.


Is for me a Honour to know you.


All your work is really great.


arnoldemu

Quote from: wilco2009 on 19:52, 11 September 13
How can I convert a conventional program to run in a ROM?. Probably making a loader and copying the content in RAM?
Did you have a specific program you wanted on ROM?


Quote from: wilco2009 on 19:52, 11 September 13
Do you have some utilities to do it automatically?
I will make something that can help you, but some programs may still need modification.

arnoldemu

To put a game on ROM:

The ROM needs a special header, it needs to register a startup function and a function for the "|" command to start it. The command can then copy the ROM data into RAM and then run it.

Up to 4 roms can be used, they must be side by side. The other 3 roms also have headers, but it's the main ROM (1st) that has the | command.

So in this way you can put a program of 63K into ROM (not full 64K because of the headers).

If you compress the data (pucrunch) then you can have larger programs I think.

It is easiest to put a program on there that you can RUN from basic and is a single file. More files means a more special function.

I will make an example and you will see and with a tool to make them.

wilco2009


Quote from: arnoldemu on 09:27, 12 September 13Did you have a specific program you wanted on ROM?

I'm thinking in general, not in a specific program.


Quote from: arnoldemuI will make something that can help you, but some programs may still need modification.

It will be great!!

Quote from: arnoldemu on 09:31, 12 September 13
To put a game on ROM:

The ROM needs a special header, it needs to register a startup function and a function for the "|" command to start it. The command can then copy the ROM data into RAM and then run it.

Up to 4 roms can be used, they must be side by side. The other 3 roms also have headers, but it's the main ROM (1st) that has the | command.

So in this way you can put a program of 63K into ROM (not full 64K because of the headers).

If you compress the data (pucrunch) then you can have larger programs I think.

It is easiest to put a program on there that you can RUN from basic and is a single file. More files means a more special function.

I will make an example and you will see and with a tool to make them.



I have  thought more or less in this process, but I'm not known cpc at depth, and at the moment, I can't be able to make the program.


Thanks for your help, and I'll wait your example.

arnoldemu

Example is attached.

I give some instructions of how I did it.
I give the main rom.asm file (without binary files). Can be built with:
pasmo --bin gb-cpc.asm gb-cpc.bin
pasmo --bin rom.asm rom.bin

of course you need the game binary data. Not in this zip.
I give the final rom.rom I made. It is for the 464, it crashes on 6128 :(

But I think it will show what to do with a simple game.

I think most games need to be compressed to fit.

I don't have time to make the tool yet that will allow you to have more than 1 rom.



McKlain


TFM

For assembling I use the famous MAXAM ROM attached to the CPC (or CPC emulator). Seel wiki page.
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

TFM

Quote from: TFM on 20:06, 12 September 13
For assembling I use the famous MAXAM ROM attached to the CPC (or CPC emulator). Seel wiki page.


@Wilco: If you want to have a particular game in ROM, you can post it's DSK here. If it has an simple unprotected loader, then I can make a ROM for you and put the ROM file back here.
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

wilco2009

Thank you a lot.
I'm thinking in general, not in a specific game, but is very interesting your offer.


I'll think on it and will tell you a game to convert.

wilco2009

Quote from: arnoldemu on 13:52, 12 September 13
Example is attached.

I give some instructions of how I did it.
I give the main rom.asm file (without binary files). Can be built with:
pasmo --bin gb-cpc.asm gb-cpc.bin
pasmo --bin rom.asm rom.bin

of course you need the game binary data. Not in this zip.
I give the final rom.rom I made. It is for the 464, it crashes on 6128 :(

But I think it will show what to do with a simple game.

I think most games need to be compressed to fit.

I don't have time to make the tool yet that will allow you to have more than 1 rom.


Thankyou very much for you example.
I have to read it in depth to learn the process.


Munchausen

Quote from: wilco2009 on 15:30, 13 September 13
Thank you a lot.
I'm thinking in general, not in a specific game, but is very interesting your offer.


I'll think on it and will tell you a game to convert.


FYI, the ROM manager I think can automatically convert many simple software to ROM for you http://www.octoate.de/wp/2013/02/17/roman-v1-0megaflash-rom-manager/

Devilmarkus

Nice usage of my C64 ROM ;)

Welcome on board, Wilco!
When you put your ear on a hot stove, you can smell how stupid you are ...

Amstrad CPC games in your webbrowser

JavaCPC Desktop Full Release

TFM

Quote from: Munchausen on 03:44, 15 September 13

FYI, the ROM manager I think can automatically convert many simple software to ROM for you http://www.octoate.de/wp/2013/02/17/roman-v1-0megaflash-rom-manager/

That works only up to 15 KB, which is far too small. Using the legendary Softbrenner from the Inicrons, you can use up to 31 KB. So if you compress a game, it will fit in there.

TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

wilco2009

Quote from: Devilmarkus on 11:21, 15 September 13
Nice usage of my C64 ROM ;)

Welcome on board, Wilco!


Thanks!
Really nice ROM.  ;)

wilco2009

Quote from: TFM on 20:08, 12 September 13


@Wilco: If you want to have a particular game in ROM, you can post it's DSK here. If it has an simple unprotected loader, then I can make a ROM for you and put the ROM file back here.


I'm thinking in Goody, but there are only disk versión and I don't know if could be possible to copy it to a ROM or it need the disk.
If not, could you convert "Game Over" and "Camelot Warriors".


I'll send you the links by private?




Powered by SMFPacks Menu Editor Mod