Author Topic: Super mario bros on CPC 464, still alive!  (Read 6971 times)

0 Members and 1 Guest are viewing this topic.

Offline GinBlog82

  • CPC464
  • **
  • Posts: 25
  • Liked: 84
Super mario bros on CPC 464, still alive!
« on: 13:50, 27 October 16 »
Hi, recently I went into this thread, searching on Google:

http://www.cpcwiki.eu/forum/games/mario-on-the-cpc-demo/msg110541

I'm the author of the demo and I developed it about 1 year ago in few days, I didn't know that it could focus all this interest :-) As you understood by the interview on Retromaniac, I'm a software engineer (so really busy) and after the company where I work has been acquired by Amazon.com I didn't have time to continue the project (you know, new job -> new responabilities). After a long period of turbulence, I found some stability and I decided to continue the porting of SMB in my spare time, when it's possible.


As you said, the most interesting part of this demo is the hardware scrolling, that I implemented with the trick of CRTC registers. During my development process, I found (without surprise, to be honest) that CPC 464 is really slow to draw the whole scene with a software scroll, also without drawing the blank parts. I implemented it in Z80 assembly with a result of 7-8 fps, that could be good for a cpc old-style videogame but not Super Mario Bros. The only thing that I can do to reproduce an horizontal scroll similar to the NES one is to draw only a column on the right corner of the screen, and make the magic shifting the screen with the CRTC register, using double buffering to achieve 4 pixels accuracy. The result is what you see on the youtube video.

Talking about graphics, there is a reason why I didn't use Mode 0. Also if this resolution provides more colors and 2 pixels per byte (intead of 4), I didn't want to alter the aspect of the original game or enlarge the scale of the characters like you saw on the Giana Sisters porting (that was mostly despised for this reason), I desired to maintain the same resolution and graphics aspect, also if it means less colors (is this case, only 4). I remember how good was Super Mario Land for Gameboy, and I decided to readapt the graphics to use only 3 colors in gray scale. The background color can have a polychromatic tone to characterize the level (as we can see on famous movies like Sin City, this is very beautiful to watch). I'm happy with the result because it's exactly what I wanted to achieve, I'm not interested in procuding old-cheap looking bad graphics for the sake of similarity. "Scaling the graphics" is different than "stretching the resolution".

Somebody said that this demo is only 1% of the game, but I disagree, at least in terms of producing a playable demo. The map is consistent and meant to be played, I have algorithms to draw the characters, to read the keyboard and I ported 90% of the SMB graphics. I have already scaled the super mario physics using fixed point precision and I can use double buffering to draw characters also when the scene is stationary. The only thing I need is to draw a jumping tile on the screen drawing the animated player instead, and most of the level is playable. But if you mean that one level is only a few percentage of the game, you are right. The worst problem with CPC 464 is the memory and most of them is wasted now by instructions, graphics, maps and internal tables. When I released that interview on retromaniac I was sure that (in some way), I could put all the levels using some magic compression algorithm, but now I can say that it's not possible. Maybe I can crunch a couple of levels with zrle, but i don't guarantee anything. If I can make the first playable world, it will be a miracle :-) And what about the music? Too much limitations, trust me, I program display drivers for living and this work is even more difficult! :-) For now let's produce a playable demo (a matter of weeks, I hope), then we'll see in the future.


Thanks for the attention, regards.
« Last Edit: 14:00, 27 October 16 by GinBlog82 »

Offline ||C|-|E||

  • Administrator
  • 6128 Plus
  • *****
  • Posts: 1.665
  • Country: gb
    • Mundo CPC
  • Liked: 920
Re: Super mario bros on CPC 464, still alive!
« Reply #1 on: 14:06, 27 October 16 »
I am really glad to seed that you areworking on it! I was really looking forward to your conversion  :D

Only a couple of things, though:

- Remember that Nintendo is VERY protective with these kind of things, even if we are talking about an Amstrad port. I know some people that had a lot of trouble using their characters or re-making their games. Actually, they were not even happy with Donkey Kong for Amstrad being freely downloadable. I am sure you know this  :)

- Have you consider a 128KB version? the game is demanding and it would really benefit from the extra RAM. A Plus conversion would be amazing too, and very similar to the original one because you could easily use hardware scrolling and move the sprites by hard as well.

Anyway, keep the good work!
« Last Edit: 14:08, 27 October 16 by ||C|-|E|| »

Offline Joseman

  • 6128 Plus
  • ******
  • Posts: 649
  • Country: es
  • Liked: 475
Re: Super mario bros on CPC 464, still alive!
« Reply #2 on: 15:17, 27 October 16 »
Hi @GinBlog82

You don't know how happy makes me hear about this SMB port on the CPC.

My girlfriend is a fan of SMB and i'm a fan of the CPC, i WANT to show her... look, here is SMB in my CPC!!

If you say that a demo will be avaliable in few weeks...

well imagine just how happy i'm now  :laugh:

i'm 100% with this project, continue developing it PLEASE.

Offline GinBlog82

  • CPC464
  • **
  • Posts: 25
  • Liked: 84
Re: Super mario bros on CPC 464, still alive!
« Reply #3 on: 15:28, 27 October 16 »
Quote
- Remember that Nintendo is VERY protective with these kind of things, even if we are talking about an Amstrad port. I know some people that had a lot of trouble using their characters or re-making their games. Actually, they were not even happy with Donkey Kong for Amstrad being freely downloadable. I am sure you know this


Yeah, I know, I'm expecting a mail from the lawyers one of these days :-) The sad thing is that they don't continue the projects, they kill them. If there will be troubles, I'll switch to Giana Sisters ;-)

Quote
- Have you consider a 128KB version? the game is demanding and it would really benefit from the extra RAM. A Plus conversion would be amazing too, and very similar to the original one because you could easily use hardware scrolling and move the sprites by hard as well.


Yeah, I'm considering that, in particular the Plus edition that is able to perform 1 pixel accuracy. It would be really cool.

Quote
i'm 100% with this project, continue developing it PLEASE.

I'm going to try it, thanks for the encouragement.

Offline arnoldemu

  • Supporter
  • 6128 Plus
  • *
  • Posts: 5.108
  • Country: gb
    • Unofficial Amstrad WWW Resource
  • Liked: 1947
Re: Super mario bros on CPC 464, still alive!
« Reply #4 on: 15:41, 27 October 16 »
...Somebody said that this demo is only 1% of the game, but I disagree, at least in terms of producing a playable demo. The map is ..
Is there moving enemy characters? Is the level you made fully playable? (including scoring etc)?

making the ai good and playable takes time and I wish you well with your project.
My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

Offline Gryzor

  • Administrator
  • 6128 Plus
  • *****
  • Posts: 14.069
  • Country: gr
  • CPC-Wiki maintainer
    • CPCWiki
  • Liked: 2323
Re: Super mario bros on CPC 464, still alive!
« Reply #5 on: 15:47, 27 October 16 »
I was never a Mario fan but I'd be crazy if I said I don't want to play this! Welcome, and thanks for the update!!

Offline seanb

  • Supporter
  • 6128 Plus
  • *
  • Posts: 637
  • Country: gb
  • Captain Wrong
  • Liked: 228
Re: Super mario bros on CPC 464, still alive!
« Reply #6 on: 15:50, 27 October 16 »
This is fantastic news.
Keep persevering. I have no doubt even just the first world would be very welcomed.
Thou shall not question Captain Wrong!

Offline Cholo

  • 464 Plus
  • *****
  • Posts: 480
  • Country: dk
  • Liked: 63
Re: Super mario bros on CPC 464, still alive!
« Reply #7 on: 01:27, 28 October 16 »
Great news.


Oh and as CE mentioned, watch out for Nintendo .. they totally dont care. Its isnt just taking the rights off youtube videos for years, nope, just the last few month they shut down Pokemon Uranium, Metroid 2 remake, Zelda 3D Remake.


And finally last month they shut down 562 fan made games on one big swoop:





So make sure to rename everything at least  ;)

Offline GinBlog82

  • CPC464
  • **
  • Posts: 25
  • Liked: 84
Re: Super mario bros on CPC 464, still alive!
« Reply #8 on: 10:55, 28 October 16 »
Yeah, Nintendo is a bad guy :-) I have the suspect that they don't close the projects unless they are only unpopular youtube videos. Years ago I created this:





I was trying to create a Mario 64 clone for PC programmed in C++ and OpenGL 2.1, then I abandoned it because I finished the university and I found a job :-) The engine is part of a project that I'm reprogramming from scratch. If I got the time, I'd really like to continue it, possibly not Mario or Nintendo will go crazy this time! The funny thing is that in all these years, they never noticed this video, probably because it's not popular :-)


Anyway, yesterday I continued the cpc project, finally I was able to merge the 4 pixel accurate scroll along the player movement, the final result is not so bad. To simulate mario movements, I'm using the following indications:

http://s276.photobucket.com/user/jdaster64/media/smb_playerphysics.png.html


the result is pretty good. Now I have to do some optimizations to improve the speed, implement very simple collisions with the map and... that's it! The second video is coming soon.

Offline EgoTrip

  • 6128 Plus
  • ******
  • Posts: 1.024
  • Country: gl
    • http://egochip.blogspot.co.uk/
  • Liked: 604
Re: Super mario bros on CPC 464, still alive!
« Reply #9 on: 17:09, 29 October 16 »
And finally last month they shut down 562 fan made games on one big swoop:

So make sure to rename everything at least  ;)

But as they said, they were shut down because the sites hosting them were generating revenue from them, which is fair enough.

I think the best thing to do is replace Mario with Roland graphics. Super Roland Bros is better for the CPC.