• Ever wanted an RSS feed of all your favorite gaming news sites? Go check out our new Gaming Headlines feed! Read more about it here.

Deleted member 12790

User requested account closure
Banned
Oct 27, 2017
24,537
No, I'm not talking about the Great Giana Sisters, I'm talking a real deal 1:1 port of Super Mario Bros to the Commodore 64. This is pretty much a miracle port:



There are numerous reasons why this sort of port is amazing. While SMB source ports to more powerful systems (i.e. the Sega Master System or Sega Genesis) have been done before, the C64 is in many, many ways less capable than the NES. Despite having very similar CPUs, their video hardware is radically different. To be succinct, it should be impossible to scroll the screen this way, and to display as many colors on screen and in sprites without using the double width mode. The c64 can normally only display 8 sprites at once, either in normal resolution at 2 colors available, one is a high resolution (read: same resolution as NES sprites) mode that is only two colors, same as the background tiles:

c64reset.png


and the other is a "fat pixel" mode that lets you draw multiple colors, at half the horizontal resolution:

31865103-30467f1e-b769-11e7-9f3e-c065b4413f82.png


Great Giana Sisters uses this fat mode, which is why it looks very different from real SMB:

hqdefault.jpg


I have absolutely no clue how the C64 port of SMB is doing it, but it's using the high resolution mode, displaying more colors than usually possible, and scrolling in impossible ways. Absolutely amazing port, wow.
 
OP
OP

Deleted member 12790

User requested account closure
Banned
Oct 27, 2017
24,537
Maybe this will make things make more sense, this is normally the C64 high resolution mode:

themill_b_npe.png


If you break the image up into 8x8 tiles, you'll notice no square ever uses more than 2 colors:

1440002461491940.jpg


By contrast, the NES can display 3 colors + transparency in every 8x8 tile. In order to display multiple colors like this on the C64, you have to use a fat pixel mode, which sacrifices half the resolution. Additionally, this high resolution mode has no real ability to scroll left or right.
 
OP
OP

Deleted member 12790

User requested account closure
Banned
Oct 27, 2017
24,537
By comparison, here's Hudson's port of Super Mario Bros to the PC-88 which used a superior Z80 CPU, which had similar color restrictions as the C64:



You can see the complete lack of scrolling present. The C64 uses a slightly modified version of the CPU in the NES, not something stronger, but has much more restrictive video drawing capabilities than the NES. For it to match the NES output is absolutely astonishing.
 
OP
OP

Deleted member 12790

User requested account closure
Banned
Oct 27, 2017
24,537
So, I dunno if it's against the rules to link to the download, but they have it in d64 format, which will let you write it to a REAL C64 5 1/4" disk. I have a bunch of them left over, and I think I'll convert it to that format and make a video showing how long the loading is on a real C64 disk drive lol.
 
OP
OP

Deleted member 12790

User requested account closure
Banned
Oct 27, 2017
24,537
So yeah, this port is pretty astonishing. Any idea how it's accomplished? Seems like magic.

No freaking clue. I know enough about the C64 to know this shouldn't be possible, though. C64 demoscene never stops being amazing. I do know that this uses an apparent bug in the video chip to do the scrolling that isn't present in all editions of C64, though. like the official read me says if it doesn't work on one C64, that they suggest you try another. I have 4 different C64s, all different revisions, so I'll put it through the pace.
 

chanunnaki

Banned
Oct 25, 2017
1,783
Is
So, I dunno if it's against the rules to link to the download, but they have it in d64 format, which will let you write it to a REAL C64 5 1/4" disk. I have a bunch of them left over, and I think I'll convert it to that format and make a video showing how long the loading is on a real C64 disk drive lol.
it the whole game ported or just the first few levels?
 

Kraken3dfx

Member
Oct 25, 2017
2,944
Denver, CO
you joke, but you can totally run this on the C64 mini:



That's super cool, I actually really want to buy one of those. I do still have my C64 though, along with my 1541 drive. I've had both since I was 11 years old, I learned to hoard at a very young age thanks to my mother, luckily, it was all electronics that have only increased in value and I've been lucky enough to have enough space to maintain my collection.
 
OP
OP

Deleted member 12790

User requested account closure
Banned
Oct 27, 2017
24,537
That's super cool, I actually really want to buy one of those. I do still have my C64 though, along with my 1541 drive. I've had both since I was 11 years old, I learned to hoard at a very young age thanks to my mother, luckily, it was all electronics that have only increased in value and I've been lucky enough to have enough space to maintain my collection.

I have the newer USA model mini, and a C64dtv from Jerry Elsworth, but I prefer using a real breadbin C64 yeah. I actually have both a breadbin model and a C64C as well to match my Amiga.

C64 gaming is so cool, it's something more people should explore.
 
OP
OP

Deleted member 12790

User requested account closure
Banned
Oct 27, 2017
24,537
The video you linked is just a hair misleading... On real hardware, SMB Special actually does perform a transitional scroll effect from screen to screen, much like Legend of Zelda on NES, but indeed none is present in that emulated clip.

Carry on!

The Sharp X1 version has the horiztonally scrolling screen transitions, which are handled in hardware. The PC-88 version has no such ability to do so, and uses page flipping.



Either way, the C64 has no hardware to scroll left and right at all, only up and down in character field mode.
 
OP
OP

Deleted member 12790

User requested account closure
Banned
Oct 27, 2017
24,537
For comparison, this is as close as the C64 got previously to Super Mario Bros:



Great Giana Sisters was no slouch, either, it's also an insanely impressive game made by C64 coding god Manfred Trenz. It's just that this specific port of SMB is that much more amazing.
 

Tahnit

Member
Oct 25, 2017
9,965
This shouldnt be possible. Scrolling is an insane thing on a commodore 64. Holy shit.
 

Agent X

Member
Oct 27, 2017
1,141
New Jersey
This is a remarkable port to the Commodore 64!

I have absolutely no clue how the C64 port of SMB is doing it, but it's using the high resolution mode, displaying more colors than usually possible, and scrolling in impossible ways. Absolutely amazing port, wow.

Are you sure it's using high resolution mode? To me, it looks like it's using multicolor (160x200) mode for most of the screen, although the top row of text appears to be hi-res. Some of the tiles and sprites seem to be "grittier" than the original NES game.

This doesn't diminish from the amazing effort they put into this. I'm impressed that they got this to work well with the C64's color palette, and the sound appears to be virtually spot on.
 

PogiJones

Banned
Oct 27, 2017
1,636
For comparison, this is as close as the C64 got previously to Super Mario Bros:



Great Giana Sisters was no slouch, either, it's also an insanely impressive game made by C64 coding god Manfred Trenz. It's just that this specific port of SMB is that much more amazing.

What's Tidus doing in that video?
 
OP
OP

Deleted member 12790

User requested account closure
Banned
Oct 27, 2017
24,537
Are you sure it's using high resolution mode? To me, it looks like it's using multicolor (160x200) mode for most of the screen, although the top row of text appears to be hi-res. Some of the tiles and sprites seem to be "grittier" than the original NES game.

There are 1 pixel horizontal gaps everywhere. Look at the pixel separating the legs of the M in Super Mario Bros, for example.

I notice some of the tiles are misaligned by 1 pixel, though. I really wonder what is going on.
 

Deleted member 2171

User requested account closure
Banned
Oct 25, 2017
3,731
Could the more colors be a similar glitch exploit as Travelers Tales tried for the Genesis?



Because fucking with how it gets color to the screen seems to be the way, especially since they said it's required to have bugged hardware for this to work.


Reminds me of how certain features got cut from other games because something got bugfixed or changed in revisions.
 

PaulloDEC

Visited by Knack
Member
Oct 25, 2017
7,409
Australia
Super interesting. I'm all in for the inevitable Youtube video that explains how this works in a way that is both incomprehensible yet also fascinating to me.
 

PC98_Audi

Producer @ Limited Run Games
Verified
Oct 26, 2017
260
Raleigh
Krejlooc, your posts literally turns me on.

As someone that has worked closely with Chris Huelsbeck over the years and seen pretty much all the insanity that goes into making good C64 games, seeing this port is surprisingly jawdropping.
 
Oct 26, 2017
7,981
There are 1 pixel horizontal gaps everywhere. Look at the pixel separating the legs of the M in Super Mario Bros, for example.

I notice some of the tiles are misaligned by 1 pixel, though. I really wonder what is going on.

The Logo part is definitely at 160 wide, but the small text is full resolution.
Only Mario's sprite(s?) and the white text is at full resolution as far as I can tell, but I don't know anything about c64 programming so I don't know what that means. Guessing Mario is layering 2 sprites on top of each other to get 3 colours?

Edit: And the clouds. Shocking secret: The clouds are twice the resolution of the bushes!
 
Last edited:
Oct 29, 2017
4,721
Absolutely sensational! Literal witchcraft in action! :o

For those that don't understand, this is like trying to get a NES to run Super Mario Kart... and succeeding!!
 

eso76

Prophet of Truth
Member
Dec 8, 2017
8,107
The Logo part is definitely at 160 wide, but the small text is full resolution.
Only Mario's sprite(s?) and the white text is at full resolution as far as I can tell, but I don't know anything about c64 programming so I don't know what that means. Guessing Mario is layering 2 sprites on top of each other to get 3 colours?

Edit: And the clouds. Shocking secret: The clouds are twice the resolution of the bushes!

yeah, probably layering 2 sprites for mario, the rest doesn't look hi res to me, but i have yet to try it myself.
I remember Giana Sister also using high res for clouds :D

A few slowdowns here and there, but it's also running on a machine with a CPU running at half the clock speed compared to NES
Incredible job, and they also made the SID sound spot on.

Absolutely sensational! Literal witchcraft in action! :o

For those that don't understand, this is like trying to get a NES to run Super Mario Kart... and succeeding!!

So, something like this (not SMK, but close enough)

 
Oct 29, 2017
4,721
yeah, probably layering 2 sprites for mario, the rest doesn't look hi res to me, but i have yet to try it myself.
I remember Giana Sister also using high res for clouds :D

A few slowdowns here and there, but it's also running on a machine with a CPU running at half the clock speed compared to NES
Incredible job, and they also made the SID sound spot on.



So, something like this (not SMK, but close enough)



Yeah, I saw that a few days ago! That's absolutely mindblowing too!
 

Zellia

Banned
Oct 25, 2017
2,769
UK
What an insane achievement. It's astonishing what people can do with this ancient hardware.