Author Topic: Converted GX4000 .cpr - The topic (repository link in first post)  (Read 286793 times)

0 Members and 1 Guest are viewing this topic.

Offline dthrone

  • CPC6128
  • ****
  • Posts: 150
  • Country: gb
    • SOHDE
  • Liked: 111
  • Likes Given: 148

Here it is  ;)


I assume the game bytes will appear explicitly somewhere in the .cpr but I can’t see any.  If this is the case the game simply doesn’t exist in your .cpr file.  I’ve not used or studied the tool so could be off the mark.

Offline iXien

  • CPC464
  • **
  • Posts: 33
  • Country: fr
    • Homebrew.AmstradToday
  • Liked: 84
  • Likes Given: 13
I tried a lot of different DSK but I think there are all from the same crack. The french version from XOR perfectly works converted in CPR. But it's a french version. It won't disturb people like me as I'm French but it seems to be the only version that can be converted as it uses plain files.

And there is a lot of work. On the cracktro first as it has to be adapted to GX4000 joypad. 3 choices and a level selector using keyboard. And then in the game with some keys to remap to joypad. It's way beyond my current skills. CPR and DSK attached if it interests someone  :)
« Last Edit: 19:31, 28 August 19 by iXien »
http://homebrew.amstradtoday.com, the only website dedicated to CPC homebrew games.

Offline TotO

  • 6128 Plus
  • ******
  • Posts: 3.408
  • Country: fr
    • ?area=showdonations;u=4
  • Liked: 2592
  • Likes Given: 1525
Or less by removing the cracktro... :-\
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

Offline iXien

  • CPC464
  • **
  • Posts: 33
  • Country: fr
    • Homebrew.AmstradToday
  • Liked: 84
  • Likes Given: 13
The cracktro is very interesting as it offers a level selector that compensates the impossibility of using the ingame save option. With that, we only need to remap some keys like pause (ESC key) and time remaining (SPACEBAR), maybe suicide to restart the current level (CTRL+A).   
« Last Edit: 19:49, 28 August 19 by iXien »
http://homebrew.amstradtoday.com, the only website dedicated to CPC homebrew games.

Offline TotO

  • 6128 Plus
  • ******
  • Posts: 3.408
  • Country: fr
    • ?area=showdonations;u=4
  • Liked: 2592
  • Likes Given: 1525
I have not tested all the converted games to .CPR so may be I'm wrong... I though that all games do not include any cracktro?
IMO, because they have to works on GX4000, it will be a pain to remap the cracktro keys (when possible) and users to search how it works for each game.

It will be more interresting to have:
1- The game w/o crack
2- An common cheat menu designed to be used with the GX4000 controller

In this way, by default you run the game as it was expected to be.
If you keep the fire button pressed after launching the ROM, the cheat menu is displayed.

The best will be that cheat menu include into the C4CPC...  ;D
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

Offline iXien

  • CPC464
  • **
  • Posts: 33
  • Country: fr
    • Homebrew.AmstradToday
  • Liked: 84
  • Likes Given: 13
I saw different CPR using modified cracktro, even the keys to press on screen, very nice. But sadly it needs modifications I'm not able to make  :-[
http://homebrew.amstradtoday.com, the only website dedicated to CPC homebrew games.

Offline TotO

  • 6128 Plus
  • ******
  • Posts: 3.408
  • Country: fr
    • ?area=showdonations;u=4
  • Liked: 2592
  • Likes Given: 1525
OK... It is the "quick and dirty way".  ;D

Like MAME, it will be great to have a cheat file and patch them through a dedicated menu before launching the ROM.
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

Offline iXien

  • CPC464
  • **
  • Posts: 33
  • Country: fr
    • Homebrew.AmstradToday
  • Liked: 84
  • Likes Given: 13
Let's say it respects the CPC spirit and the legacy of cracktros from XOR, Chany, TB Crackers, Café Kids ...

Here is my first Contribution : PHANTIS LEGACY, a nice puzzle game created by Kukulcan in 2017. During a discussion, I give him the idea of a control system that will permit full play of the game without keyboard. I see now that it was a good idea  8) 

While playing, press FIRE 2 and :
LEFT/RIGHT : Choose an item
DOWN : Open ingame menu
UP : Launch craft
Press FIRE 1 to use the selected item.

Enjoy  :D

PS : Sorry, I don't have any tool to compress in RAR, if anyone now a free tool, it should be nice. So CPR is zipped.
http://homebrew.amstradtoday.com, the only website dedicated to CPC homebrew games.

Offline TotO

  • 6128 Plus
  • ******
  • Posts: 3.408
  • Country: fr
    • ?area=showdonations;u=4
  • Liked: 2592
  • Likes Given: 1525
I do not understand what is the legacy of the piraty... ;D
But, I agree that cracktro have to be available in the same way we can watch demo. (but not mandatory with respect for peoples buying their games)
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

Offline iXien

  • CPC464
  • **
  • Posts: 33
  • Country: fr
    • Homebrew.AmstradToday
  • Liked: 84
  • Likes Given: 13
Ok guys,

I resolved my little .RAR problem. So here is PHANTIS LEGACY again but compressed in the right format.

And two new CPRs. Little french games from Loriciels: BACTRON and INFERNAL RUNNER. For each one I wrote a script that permits to choose to play with pokes or not, just by pressing  FIRE 1 or FIRE 2 on joypad. But I failed to remap Pause function.

If someone want to do it, it should be nice for each game to remap the ESC key to PAUSE button on GX4000. In this case, it would be great if this person can explain to me how he did to help me progress  ;)


EDIT 09/12/19 : I delete files as I upload definitive version in later post.
« Last Edit: 00:05, 13 September 19 by iXien »
http://homebrew.amstradtoday.com, the only website dedicated to CPC homebrew games.

Offline Urusergi

  • CPC6128
  • ****
  • Posts: 167
  • Country: es
  • Liked: 252
  • Likes Given: 1164
But I failed to remap Pause function.

If someone want to do it, it should be nice for each game to remap the ESC key to PAUSE button on GX4000. In this case, it would be great if this person can explain to me how he did to help me progress  ;)
Hi, sorry for my english.

BACTRON

In Winape it's very easy:
- breakpoint I/O Keyboard (ingame, find out tipical keyboard routine: LD BC,&F40E OUT C,(C)....... and 10 bytes keyboard buffer: LD HL,&7A1A)
- Keyboard buffer is from &7A1A to &7A23
- ESC key is in &7A22, third bit
- turn off all breakpoints
- Breakpoint on Read the &7A22 address
   &6FB6 - LD A,(&7A22)
   &6FB9 - BIT 2,A
- Turn off all breakpoints
- Push ESC for pause on
- Breakpoint on read the &7A22 address again (ESC key is also abort inside pause on)
   &702D - LD A,(&7A22)
   &7030 - BIT 2,A
- Change ESC to P key
   &6FB6 - LD A,(&7A1D)
   &6FB9 - BIT 3,A
   &702D - LD A,(&7A1D)
   &7030 - BIT 3,A

And that's all

EDIT: I forgot the anti bounce routine!!

When a key has two consecutive functions it's necessary to put a containment routine which verifies that you have stopped pressing it.
   &7021 - LD A,(&7A22) -----> LD A,(&7A1D)
   &7024 - BIT 2,A -------------> BIT 3,A
« Last Edit: 21:57, 29 August 19 by Urusergi »

Offline Urusergi

  • CPC6128
  • ****
  • Posts: 167
  • Country: es
  • Liked: 252
  • Likes Given: 1164
Well, the next one is Infernal Runner.

This is a game "firmware friendly" and use calls to it. The way to notice is with a breakpoint input/output of keyboard Read and check  if it happens in &08A1 or &08A5.
In this case the game uses the firmware keyboard routine and you must find the calls that point to that routine.
The most common is CALL &BB1E (winape hex search is used: CD 1E BB) and &42 corresponds to the ESC key for this routine:

&67F3   LD A,&42
&67F5   CALL &BB1E

and the containment routine:

&67FF   LD A,&42
&6801  CALL &BB1E

So, you just have to change &42 with &1B on both and that's all... very easy  ;D
« Last Edit: 00:08, 31 August 19 by Urusergi »

Offline iXien

  • CPC464
  • **
  • Posts: 33
  • Country: fr
    • Homebrew.AmstradToday
  • Liked: 84
  • Likes Given: 13
Thanks Urusergi!

I'm sorry but learning to do such things in CPR files is a little bit hard for me. To make the modifications, so I just use WinApe? I read this topic: https://www.cpcwiki.eu/imgs/6/6f/CPC_Fanzine_-_GX4000_conversion.pdf

Infernal Runner seems to be simpler to modify. So if you're ok, I allow myself to ask you more details with this one to exercise myself. I launch CPR file with WinAPE and while the game is loaded and running, I press F7. But then, I try to search for the informations you give without success. And to be honest, what is a breakpoint?

Sorry for beeing so lame. I really want to create more complex CPR but I know that it will be very difficult for me as I'm really not comfortable with coding  :o  . I made some tests with other games but these ones need key modifications to be played
http://homebrew.amstradtoday.com, the only website dedicated to CPC homebrew games.

Offline iXien

  • CPC464
  • **
  • Posts: 33
  • Country: fr
    • Homebrew.AmstradToday
  • Liked: 84
  • Likes Given: 13
Hi guys,

until I manage to remap keys, here are CPRs conversions of games that don't have ingame keys  8)

3D Fight : All in french I'm afraid, but nothing special to understand. You can pass the hiscore table clicking on fire buttons.
Maddog : One of the first Titus games. Simple but really addictive and not very well-known outside of France. You control Maddog and try to collect all it think about but don't forget to go back to home before the night.
MLM 3D : From the guys behind ZAXX. Hard but I added a script to choose normal game or with unlimited lives. Fully playable with joypad, even to enter your name in hiscore table.
Zox 2099 : If you survive the boring first part in space, you will discover a nice maze game in search for 4 hostages to bring back to Earth.

Have a nice day  :D

EDIT 09/12/19 : I delete files as I upload definitive version in later post
« Last Edit: 00:06, 13 September 19 by iXien »
http://homebrew.amstradtoday.com, the only website dedicated to CPC homebrew games.

Offline Urusergi

  • CPC6128
  • ****
  • Posts: 167
  • Country: es
  • Liked: 252
  • Likes Given: 1164
Infernal Runner seems to be simpler to modify. So if you're ok, I allow myself to ask you more details with this one to exercise myself. I launch CPR file with WinAPE and while the game is loaded and running, I press F7. But then, I try to search for the informations you give without success. And to be honest, what is a breakpoint

Ok, a breakpoint is an event that, when it matches a condition, winape automatically enters in pause mode. You have three differents events: code, memory and I/O. This is very good when you need to find something quickly within the code. Otherwise you would have to disassemble and understand how almost the whole game is made.

In this case I do an I/O keyboard read breakpoint, what it means is that an execution interruption will occur when the game makes use of the ports dedicated to reading the keyboard. Then I get a break in the &08A1 or &08A5 address. This means we don't have a written keyboard routine for the game but it's using the firmware standard routine. at this moment we should immediately suspect only a few calls like CALL &BB1E, &BB09, &BB1B or &BB24 within the game code. The next thing is to find those calls. In this case we use the debugger search engine in "hex data" mode and look for the string CD 1E BB. There are a lot, but we have to find those who have the instruction LD A,&42 previously. Why &42? because ESC key has this code. Once found both we proceed to change the &42 for &1B (P key code) with a hexadecimal editor and that's it.
« Last Edit: 17:04, 13 September 19 by Urusergi »

Offline iXien

  • CPC464
  • **
  • Posts: 33
  • Country: fr
    • Homebrew.AmstradToday
  • Liked: 84
  • Likes Given: 13
Re: Converted GX4000 .cpr - The topic (repository link in first post)
« Reply #2490 on: 00:08, 13 September 19 »
Hi everybody,

After some days of silence, here are the news. Thanks to Urusergi and additional help of Kukulcan, webmaster of CPC-Power, I managed to modify a bunch of games. All are now GX4000 fully friendly and stored in a 256Kb CPR file (better than 512Kb for such games). Some are the ones I previously revealed but there are some new ones two.

3D Fight : A little shmup. Pass the hiscore table clicking on fire buttons. Nothing more needed.
Bactron : Your patient ill, Bactron is the cure! Include a poke to play with infinite health. Press PAUSE to hold the game, PAUSE again to quit game.
Infernal Runner : Very hard but cult game coded on CPC by Eric Chahi many years before Another World. Include a poke to play with infinite lives and health. Press PAUSE to hold game.
Maddog : One of the first Titus games. Simple but really addictive and not very well-known outside of France. You control Maddog and try to collect all it think about but don't forget to go back to home before the night.
Mange Cailloux : A very nice French Pengo clone. This is the version with the Tristar cracktro that offers some good stuff. Press PAUSE to quit game.
MLM 3D : From the guys behind ZAXX. Hard but I added a script to choose normal game or with unlimited lives. Fully playable with joypad, even to enter your name in hiscore table.
Phantis Legacy : A nice puzzle game created by Kukulcan in 2017 and directly fully playable with joypad.
Zorro : Rescue the girl in this game created by the same team as for Bruce Lee. Press J1B1 to use the sword, J1B2 to play/stop music, PAUSE to quit game.
Zox 2099 : If you survive the boring first part in space, you will discover a nice maze game in search for 4 hostages to bring back to Earth.

@remax : It is the definitive version of all these games I was working on since the past days. They have been tested on real hardware so if it is possible to add them to the CPC Wiki GX4000 conversion page, it should be very nice. 

It was a very difficult task for a musician like me that is not coder and don't really like programming, to be honest. But I'll try some other ones in the future.

DON'T GIVE UP, GUYS! We love GX4000 here! It's a nice return to favour for the little Amstrad console system and there are so many games that should be wonderful on it like ALIEN 8, AMC, BOBBY BEARING, CAPITAN TRUENO, CORSARIOS, EIDOLON, EXTERMINATOR, LIGHT CORRIDOR, MASK, MASK II, MONTY PYTHON, PRINCE OF PERSIA, RESCUE ON FRACTALUS, STARSTRIKE II, SUPER CYCLE, VENOM STRIKES BACK... So many wonders!
« Last Edit: 00:11, 13 September 19 by iXien »
http://homebrew.amstradtoday.com, the only website dedicated to CPC homebrew games.

Offline Gryzor

  • Administrator
  • 6128 Plus
  • *****
  • Posts: 15.076
  • Country: gr
  • CPC-Wiki maintainer
    • CPCWiki
  • Liked: 2967
  • Likes Given: 5219
Re: Converted GX4000 .cpr - The topic (repository link in first post)
« Reply #2491 on: 14:17, 13 September 19 »
Nice batch man!

Offline remax

  • 6128 Plus
  • ******
  • Posts: 1.069
  • Country: fr
  • Liked: 377
  • Likes Given: 419
Re: Converted GX4000 .cpr - The topic (repository link in first post)
« Reply #2492 on: 19:57, 13 September 19 »
Thanks, i'll do it ASAP

Offline MiguelSky

  • 464 Plus
  • *****
  • Posts: 355
  • Country: es
    • CPCGamesCD
  • Liked: 179
  • Likes Given: 326
Re: Converted GX4000 .cpr - The topic (repository link in first post)
« Reply #2493 on: 00:19, 19 September 19 »
Ok, a BCM spanish version is here :)


EDITO: File updated!
« Last Edit: 10:19, 21 September 19 by MiguelSky »

Offline JayBlood

  • CPC464
  • **
  • Posts: 37
  • Country: fr
  • Liked: 27
  • Likes Given: 32
Re: Converted GX4000 .cpr - The topic (repository link in first post)
« Reply #2494 on: 05:56, 19 September 19 »
Good choices, Ixien. Thank a lot. I love those games. ;)
Maybe, one day, a chance to see XOR game for GX4000? :)
« Last Edit: 05:58, 19 September 19 by JayBlood »
Jay

Offline iXien

  • CPC464
  • **
  • Posts: 33
  • Country: fr
    • Homebrew.AmstradToday
  • Liked: 84
  • Likes Given: 13
Re: Converted GX4000 .cpr - The topic (repository link in first post)
« Reply #2495 on: 07:11, 19 September 19 »
Ok, a BCM spanish version is here :)

Nice one. A BCM English version would be cool  ;D
« Last Edit: 14:42, 19 September 19 by iXien »
http://homebrew.amstradtoday.com, the only website dedicated to CPC homebrew games.

Offline MiguelSky

  • 464 Plus
  • *****
  • Posts: 355
  • Country: es
    • CPCGamesCD
  • Liked: 179
  • Likes Given: 326
Re: Converted GX4000 .cpr - The topic (repository link in first post)
« Reply #2496 on: 10:38, 19 September 19 »
Yes, I'm working on that ;)

Offline MiguelSky

  • 464 Plus
  • *****
  • Posts: 355
  • Country: es
    • CPCGamesCD
  • Liked: 179
  • Likes Given: 326
Re: Converted GX4000 .cpr - The topic (repository link in first post)
« Reply #2497 on: 10:24, 21 September 19 »
Ok, English version of BCM ready! I also updated the Spanish version in its post as it contained some errors.

Offline JayBlood

  • CPC464
  • **
  • Posts: 37
  • Country: fr
  • Liked: 27
  • Likes Given: 32
Re: Converted GX4000 .cpr - The topic (repository link in first post)
« Reply #2498 on: 23:38, 21 September 19 »
Thank MiguelSky for translation. :)
Jay

Offline MiguelSky

  • 464 Plus
  • *****
  • Posts: 355
  • Country: es
    • CPCGamesCD
  • Liked: 179
  • Likes Given: 326
Re: Converted GX4000 .cpr - The topic (repository link in first post)
« Reply #2499 on: 22:28, 22 September 19 »
You're welcome, but the game was already translated to English, I only modified my control keys changes and compiled a new cpr :)