Super Mario Bros. has been ported to the Commodore 64

Super Mario Bros. 64 has been released – Commodore 64 (C64) Forum

Commodore 64 (C64) Forum Index
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 
Super Mario Bros. 64 has been released
Goto page 1, 2, 3  Next
Post new topic   Reply to topic    Commodore 64 (C64) Forum Index
-> New Releases
View previous topic :: View next topic  
Author Message

Groupie in Training
Groupie in Training

Joined: 07 Jan 2013
Posts: 61

PostPosted: Thu Apr 18, 2019 8:23 pm    Post subject: Super Mario Bros. 64 has been released Reply with quote

After 7 years of development…

Super Mario Bros. 64

Download link: ( (


This is a Commodore 64 port of the 1985 game SUPER MARIO BROS. for the Famicom and Nintendo Entertainment System. It contains the original version that was released in Japan and United States, as well as the European version. It also detects and supports a handful of turbo functionalities, and has 2 SID support.


The disk-image contains 2 programs:

SUPER M. BROS.64 – the game (everything in one file)

SMB.64 DOCS – this manual

A cartridge-file is also provided. It only contains the game and can be used with a C64GS.


This port relies on the VSP-technique for scrolling. If you experience crashes while playing the game, this is most likely the issue. You may find out if your computer is prone to crashing by running VSP Lab.

If this is the case, there are a number of things to try (some options cheaper than others):

– Try another C64.

– Use an emulator instead.

– Use a C64 Reloaded motherboard – they are designed to be VSP-safe.

– Use a Turbo Chameleon – because of how it works, VSP glitches will not alter the Chameleons memory, thus preventing the game from crashing. This port will also benefit from its turbo functionality.


Before the game starts, an option menu will let you:

– select a version of the game.

– disable turbo (if detected).

– configure a second SID-chip.

– see the background (based on Shigeru Miyamotos artwork that was used for the Japanese and European release).

The option menu is (just like this manual) controlled using a joystick (or gamepad) in either control port.

The details of these options will now be described.


The original game was released in two versions:

– Japanese/US-release – the original for NTSC, 60 Hz video systems.

– European-release – adjusted for PAL, 50 Hz video systems.

This port will try to run the game at the intended speed (as well as having the sound in the correct pitch); this means you can play either version on any type of C64. It also means that the Japanese/US-release will not play 20% slower on a PAL-system. Likewise, the European-release will not play 20% faster on an NTSC-system.

The program will automatically detect your hardware (including any turbo functionality). Based on this, it will suggest the best version for you.

The reasoning behind the suggested version is as follows:

– If you play on a stock C64 (PAL, Drean or any NTSC) without any turbo functionality, the European-release will give you the least slowdowns, since the original game-engine is tuned for a 50 Hz refresh-rate which uses less CPU-cycles per second than the original Japanese/US-release.

– If turbo functionality is detected, the version aimed for your video-system will give you the smoothest scrolling. This means: Japanese/US-release on any NTSC C64, European-release on PAL and Drean C64.

You can override the suggested version, if you wish.


VSP issues aside, this port should be able to run on all regional C64 models. PAL, NTSC (new and old) and Drean (PAL-N) are all supported.

Since the NES-processor is clocked (roughly 70%) faster than a stock C64 there can be slowdowns during gameplay. A pixel indicates this on the time-watch graphics in the status bar.

This port will try to detect and use any kind of turbo functionality, such as:

– Commodore 128 (2 MHz in the border)

– C64 DTV

– Schnedler Systems Turbo Master CPU (untested)

– Swisscomp Turbo Processor (untested)

– Rossmoeller Flash 8 (untested)

– CMD SuperCPU Accelerator (untested)

– Icomp Turbo Chameleon 64

You can disable the detected turbo functionality if you experience problems with it enabled (or wish to see how the game performs without it).


– This port emulates 4 channels of the NES APU (audio processing unit): 2 pulse channels, 1 triangle channel and 1 noise channel. The SID-chip has 3 voices, so this is handled by sharing 1 SID-voice for the triangle and noise channel.

– If a second SID-chip is configured, the program will instead dedicate 2 APU-channels to each SID-chip.

– In the option menu you are able to configure and test your SID-setup. You can use the following addresses for the second SID-chip: $D420, $D500, $DE00 and $DF00.

– In the test you should be able to hear 2 tones being played simultaneously for 2 seconds. The first tone has a lower pitch and fades out. The second tone has a higher pitch and fades in.

– If a second SID-chip has been configured, the higher pitched tone should be playing on that SID, otherwise they will both be playing on the first SID.


The game is controlled using joystick (or gamepad) in either control port and supports 2 button joysticks (using POT X, like the C64GS joystick).

The joystick used to start a game will control Mario. If a 2 player game is selected, the other joystick will control Luigi.

You can press F1 or F3 to toggle between the 4 modes for control port 1 or 2 respectively. A message on the screen will display what mode you have selected. These modes are:

Mode 1 – Up > Jump (Default)

Mode 2 – Up > Jump, buttons swapped

Mode 3 – Standard

Mode 4 – Standard, buttons swapped

The mapping scheme is by default setup for 1 button joysticks, where pushing up will trigger jumping (and swimming).

On the C64, this is the most common way to control your character in platform games. Examples: Bubble Bobble, The Great Giana Sisters, Mayhem in Monsterland, Turrican, Wonder Boy.

If you have a joystick which supports 2 individual buttons, the second button will also trigger jumping (and swimming) in mode 1 and 3.

Depending on the physical layout of your joystick, you can change the control scheme to swap the action of the buttons (mode 2 and 4) so that they correspond physically with a NES-controller.

Reference of a NES-controller:

– The A-button (placed to the right) is jump (and swim)

– The B-button (placed to the left) is throw fireballs (and accelerate)

For 2 button joysticks it is also possible to use mode 3 and 4 which disables the UP > Jump-mapping. Do not use these modes on 1 button joysticks as you will not be able to either jump or throw fireballs.


<- – Exit to title-screen (during a game)

RUN/STOP – Pause game

F1 – Toggle joystick mode for control port 1

F3 – Toggle joystick mode for control port 2

F5 – Decrease SID volume (on some 6581 SID-chips the audio can sound distorted on the highest volume)

F7 – Increase SID volume

Back to top
View user's profile Send private message

Next Post

Introducing Mozilla WebThings – Mozilla Hacks - the Web developer blog

Fri Apr 19 , 2019

You May Like