Author Topic: JETPAC SINCLAIR ZX SPECTRUM EMULATOR FOR AMSTRAD CPC V1.0  (Read 9170 times)

0 Members and 1 Guest are viewing this topic.

Offline 40Crisis

  • CPC464
  • **
  • Posts: 41
  • Liked: 123
  • Likes Given: 4
« Last Edit: 07:47, 30 April 14 by 40Crisis »

Offline Gryzor

  • Administrator
  • 6128 Plus
  • *****
  • Posts: 14.977
  • Country: gr
  • CPC-Wiki maintainer
    • CPCWiki
  • Liked: 2949
  • Likes Given: 5121
Oh crap, I deleted that because I thought it was a duplicate in the wrong category after seeing the exact same topic here... Damn.


Well, here it is:



You can download here the first release of JETPAC SINCLAIR ZX SPECTRUM EMULATOR FOR AMSTRAD CPC range.


JetPac is a classical shooter game for Sinclair ZX Spectrum developed and released
by Ultimate Play The Game(R) C) 1983 A.C.G. (Ashby Computers and Graphics) in 1983.
It runs on a Sinclair Zx Spectrum 16K/48K.


Ultimate Play the Game(R) is a registered trademark of Microsoft Corporation
in the United States and/or other countries.


Please remember that distribution is denied for all games from Ultimate Play the Game(R).
Microsoft owns copyright for all games from Ultimate Play the Game(R) since
we have bought Rare Ltd in 2002.


Usage of this JETPAC SINCLAIR ZX SPECTRUM EMULATOR FOR AMSTRAD CPC in
conjunction with Tape you don't own is forbidden by copyright laws...




Zx Spectrum game original tape image is necessary to run the emulator but is not provided for copyright
reasons exposed above.


Please read the "Jetpac_Sinclair_Zx_Spectrum_Emulator_For_Amstrad_CPC.txt" file for details on how to
use emulator.


Enjoy. :)


[attachimg=1]


[attachimg=2]


[attachimg=3]


[attachimg=4]


[attachimg=5]


[attachimg=6]


File:
 [ Invalid Attachment ]

Offline Gryzor

  • Administrator
  • 6128 Plus
  • *****
  • Posts: 14.977
  • Country: gr
  • CPC-Wiki maintainer
    • CPCWiki
  • Liked: 2949
  • Likes Given: 5121
Oh yea man, it works!!! Both dsk and cdt, and it's awesome, although controls are just AWFUL (didn't try Joystick yet - is it mapped as normal?).

How did you do it? I see the Speccy emulator opening, what does it do?

Thanks man!

Offline Sykobee (Briggsy)

  • 6128 Plus
  • ******
  • Posts: 672
  • Country: gb
  • Liked: 227
  • Likes Given: 333
Looks better than the Spectrum version, due to the use of stippling in the rendering emulation and better base colours!

Offline SyX

  • 6128 Plus
  • ******
  • Posts: 1.107
  • Country: br
  • Liked: 1054
  • Likes Given: 1857
Great Work 40Crisis!!! :D :D :D

And the dithering must look really nice in the real CPC :)

@Gryzor: ultimate always used the most lazy way of reading the keyboard in the zx, giveng those awful key combinations, because that... use the Joystick!!! :D

PS: This is the second game that you crossed-out from my todo list, the other was Ant Attack :)

PS2: If anybody has problems getting this version, ask me in private. I have the original; in Spain we can share things while i don't get money for it and in Brazil they give a shit about european copyright laws :P

Offline Nich

  • Supporter
  • 6128 Plus
  • *
  • Posts: 658
  • Country: gb
  • CPC Game Reviews webmaster
    • CPC Game Reviews
  • Liked: 500
  • Likes Given: 611
PS2: If anybody has problems getting this version, ask me in private. I have the original; in Spain we can share things while i don't get money for it and in Brazil they give a shit about european copyright laws :P
Isn't it strange how the Spectrum community always reminds people that it is forbidden to distribute Ultimate's games - yet the CPC versions have always been widely available on NVG and various websites?

Offline SyX

  • 6128 Plus
  • ******
  • Posts: 1.107
  • Country: br
  • Liked: 1054
  • Likes Given: 1857
Isn't it strange how the Spectrum community always reminds people that it is forbidden to distribute Ultimate's games - yet the CPC versions have always been widely available on NVG and various websites?
Sure, with the law in the hand all of this is illegal, but sinceraly i don't think Microsoft/Rare is going to lose one sale in any official jet pac remake in one of their game services (if exists any one) because of this CPC version.

But it isn't the spectrum community, it's only the wos forum aptitude. And looks very hypocrite, they put the software for download and only if years later the author ask to retire it, then they did that. Of course, it's more easy that contact the author first, but this possibility has more chances of failing. And at the end of the days, the games are downloadable in lot of places. I have my original copy of Jet Pac, but i downloaded this morning instead of converting it to TZX and then apply the 40Crisis tool.

But i's much more hurting, a lot more, when the other retro computer communities (mainly c64 and zx) recover a never published game from the developers and they forget to ask by the CPC version, making us to make double work as it happened with The Prayer of The Warrior for ZX (thanks to Robcfg, we recovered the CPC version) or Solar Jetman for C64 (in theory the CPC version was finished,but we'll never see) or all the unpublished games from Clockwize, where the speccy people gave a shit about the CPC versions but recovered the ZX (everybody is going to love the remarks in this pages):
Captain Fizz
Acolyte
Shutdown
Sooty & Sweep II
Sooty & Sweep II
Thomas the Tank Engine II

And because they are anals about copyright, it doesn't mean they are an example of exemplarity and a lot less of honor.

Offline 40Crisis

  • CPC464
  • **
  • Posts: 41
  • Liked: 123
  • Likes Given: 4
Oh yea man, it works!!! Both dsk and cdt, and it's awesome, although controls are just AWFUL (didn't try Joystick yet - is it mapped as normal?).

How did you do it? I see the Speccy emulator opening, what does it do?

Thanks man!

I known that the layout of keyboard is strange but it's just the emulation of the original layout.

Yes the joystick is mapped as normal. The behaviour of a Kempston Joystick on a Sinclair Zx Spectrum is emulated.
You see the Fuse Speccy emulator opening, because I use it to dump the TAP file loaded in memory.
I first wrote a .TAP loading routine on the CPC (TAP is a rather simple format) but it didn't work.
I suspect it was because it didn"t set some system variables used by JETPAC but I couldn't figure what was wrong.
« Last Edit: 00:16, 01 May 14 by 40Crisis »

Offline 40Crisis

  • CPC464
  • **
  • Posts: 41
  • Liked: 123
  • Likes Given: 4
Great Work 40Crisis!!! :D :D :D

And the dithering must look really nice in the real CPC :)
You can also note you don't have the spectrum color attribute clashes (8x8 pixels).

@Gryzor: ultimate always used the most lazy way of reading the keyboard in the zx, giveng those awful key combinations, because that... use the Joystick!!! :D

PS: This is the second game that you crossed-out from my todo list, the other was Ant Attack :)

after writing the Maziacs emulator, you gave me the idea to reuse my engine which emulate partly the system ROM for Basic. You spoke in a post of Ant Attack. As Ant Attack use quite of lot basic, and it's a mystical game, I enhanced a little the rom emulation to make it works. This also enable me to end Ant Attack, thing I have never achieved before.


PS2: If anybody has problems getting this version, ask me in private. I have the original; in Spain we can share things while i don't get money for it and in Brazil they give a shit about european copyright laws :P

Offline 40Crisis

  • CPC464
  • **
  • Posts: 41
  • Liked: 123
  • Likes Given: 4
Looks better than the Spectrum version, due to the use of stippling in the rendering emulation and better base colours!
That's true, I get ride of the white color, because instead the use of the yellow color enables me to get richer color combinaison by dithering the 4 colors of the mode 1.

Offline 40Crisis

  • CPC464
  • **
  • Posts: 41
  • Liked: 123
  • Likes Given: 4
Great Work 40Crisis!!! :D :D :D
Thank you, I began this work in 1998, so I needed to be patient  :D but finally I did it. A child dream.


Offline SyX

  • 6128 Plus
  • ******
  • Posts: 1.107
  • Country: br
  • Liked: 1054
  • Likes Given: 1857
Quote from: 40Crisis
You can also note you don't have the spectrum color attribute clashes (8x8 pixels).
Exactly!!! I forgot to mention that, sorry. Another demonstration of all the care it has been given in this project, jejeje.

I hope fix soon my colour tv problems for being able to enjoy fully this colourful game. It's true people!!! Try this game in a CRT TV, i promise that you will see more colour than in emus. The mode 1 dithering is superb :)

Quote from: 40Crisis
after writing the Maziacs emulator, you gave me the idea to reuse my engine which emulate partly the system ROM for Basic. You spoke in a post of Ant Attack. As Ant Attack use quite of lot basic, and it's a mystical game, I enhanced a little the rom emulation to make it works. This also enable me to end Ant Attack, thing I have never achieved before.
Well, in certain way i suggested because i felt that all the hard work you made with Maziacs (another of those early great zx games that CPC soft-library lacked during the 80s) could be reused for bringing another zx classics.

And of course, there is very few games more mythical (only early Ultimate games or things like Stop the Express and other games published by Sinclair before the CPC was launched, jejeje) than Ant Attack and being another mix of basic/asm could be perfect for your system as you show us :)

Quote from: 40Crisis
Thank you, I began this work in 1998, so I needed to be patient  :D but finally I did it. A child dream.
Thanks to you, because you have made reality those dreams that we had as children and now i can play to Maziacs, Ant Attack and Jet Pac in CPC :)

The only shame is that if you launch the game the last weekend, it would have been the big success in the "Spanish CPC Users" stand during Retro Madrid  :)

Offline Gryzor

  • Administrator
  • 6128 Plus
  • *****
  • Posts: 14.977
  • Country: gr
  • CPC-Wiki maintainer
    • CPCWiki
  • Liked: 2949
  • Likes Given: 5121
I split the topic because I didn't want to take away attention from this marvelous effort...       

Offline Gryzor

  • Administrator
  • 6128 Plus
  • *****
  • Posts: 14.977
  • Country: gr
  • CPC-Wiki maintainer
    • CPCWiki
  • Liked: 2949
  • Likes Given: 5121
Been playing this today; never had before, not much anyway. I've been loving it, so thanks once more!

Offline DARKGATE

  • CPC6128
  • ****
  • Posts: 156
  • Country: it
  • Liked: 54
  • Likes Given: 6
 :o Oh my god,  :) really incredible, after thirty years finally another classic game on my AMSTRAD cpc, thank you.

P.s. Hope of see in the next future another great classic "PENTAGRAM" :( another gem for me.
Do not underestimate the power of AMSTRAD CPC.

Offline 40Crisis

  • CPC464
  • **
  • Posts: 41
  • Liked: 123
  • Likes Given: 4
JETPAC SINCLAIR ZX SPECTRUM EMULATOR FOR AMSTRAD CPC V1.0
« Reply #15 on: 00:31, 31 May 14 »
Update V1.1 (30/05/2014)

V1.1: Optimized sprite display routine, game is about 17% faster than before (30/05/2014)
         Optimized fire laser display routine

Enjoy


Offline CraigsBar

  • Supporter
  • 6128 Plus
  • *
  • Posts: 3.277
  • Country: ie
  • The party ain't over yet
    • index.php?action=treasury
  • Liked: 1172
  • Likes Given: 75
Yep tested this and it is indeed significantly faster.


Great work, thanks


Craig
IRC:  #Retro4All on Freenode

Offline SyX

  • 6128 Plus
  • ******
  • Posts: 1.107
  • Country: br
  • Liked: 1054
  • Likes Given: 1857
And the great got better!!! :D... my productivity going down again xDDD

Offline Gryzor

  • Administrator
  • 6128 Plus
  • *****
  • Posts: 14.977
  • Country: gr
  • CPC-Wiki maintainer
    • CPCWiki
  • Liked: 2949
  • Likes Given: 5121
Faster? Wasn't it full-speed before?

Offline 40Crisis

  • CPC464
  • **
  • Posts: 41
  • Liked: 123
  • Likes Given: 4
Faster? Wasn't it full-speed before?

Though the game on the CPC emulator is perfectly playable, you can notice that it's still slower than the spectrum version by looking at the speed of the enemies moving from right to left.

In V1.1, on the CPC I measured a slowdown of about 18% compared to ZX Spectrum.

I think this doesn't affect much the gameplay.




Offline Snake_Plissken

  • CPC464
  • **
  • Posts: 22
  • Country: 00
  • Liked: 12
  • Likes Given: 0
Can you explain how do you do to 'convert/port' a game ?

You compress sna and put it in a dsk/cdt file,or you have to make some work like peek and poke ?


Offline 40Crisis

  • CPC464
  • **
  • Posts: 41
  • Liked: 123
  • Likes Given: 4
Can you explain how do you do to 'convert/port' a game ?

You compress sna and put it in a dsk/cdt file,or you have to make some work like peek and poke ?

Here is the general mechanism for this kind of emulator:

1) Locate zx spectrum specific parts in z80 code: screen output, sound output, keyboard/joystick input, interrupts

2) Write emulated CPC routines for screen output, sound output, keyboard/joystick, interrupts

3) Load the Zx spectrum snasphot in CPC memory at the same location as on the zx (for JP only area #5B00-7FFF is necessary)

4) Initialise emulator engine (CPC hardware)

5) Modify routines pointers to call emulated routines

6) Set Z80 registers to snapshot values to execute code exactly as original zx code


A very good example of this, is the Pacman Arcade Emulator on CPC, which uses a similar logic.
Source code is available.
The difference is that it doesn't use snapshot to load original data but loads directly arcade roms.

Offline redbox

  • Supporter
  • 6128 Plus
  • *
  • Posts: 1.751
  • Country: gb
    • redbox
  • Liked: 326
  • Likes Given: 267
By this method I'm assuming you're emulating a 48kb Spectrum game and then using the old
Speccy screen RAM area as somewhere to put your CPC specific routines?


Offline 40Crisis

  • CPC464
  • **
  • Posts: 41
  • Liked: 123
  • Likes Given: 4
By this method I'm assuming you're emulating a 48kb Spectrum game and then using the old
Speccy screen RAM area as somewhere to put your CPC specific routines?

That's true and on a Zx Spectrum 16K/48K, to this screen memory (6912 Bytes) you can add 16K if the game doesn't use zx rom (100% machine code game). You can dedicate it to CPC screen for example.

Offline Snake_Plissken

  • CPC464
  • **
  • Posts: 22
  • Country: 00
  • Liked: 12
  • Likes Given: 0
Roller Coaster on the CPC next time ? or Dalek attack ? :)