Slashdot Mirror


Mario Bros. Clone Released For Atari 2600

YokimaSun writes "The world of Homebrew Coding never ceases to amaze, even on an old system like the Atari 2600 a coder over at the Atariage forums has released a clone of the original Nes game Super Mario Bros with video, which has the first level from the classic game and eventually will have the first four worlds. Equally as impressive is this 3D Mario game written for the Sega Saturn."

30 of 90 comments (clear)

  1. Simply amazing by damn_registrars · · Score: 2

    I had no idea the Atari could actually handle that many simultaneous colors. I'm also curious to know how the programmer managed to do separate fire / jump when the controller only has one button. Does "up" on the controller do jump (could be a problem when climbing vines).

    --
    Damn_registrars has no butt-hole. Damn_registrars has no use for a butt-hole.
    1. Re:Simply amazing by cpu6502 · · Score: 4, Informative

      The Atari is not bitmapped in the same way as more-modern consoles. It can display any of 128 colors (by adjusting the chroma and luma values) and do it pixel-by-pixel. The only limitation is how fast the software executes.

      I'd like to see someone clone Super Mario Bros for the C64. The closest we had was Great Giana Sisters (which was then forced off the market by Nintendo lawsuit).

      Also: What's so impressive about SMB on the Sega Saturn? That's a 32 bit CPU and ought to be able to handle an 8 bit game easily.

      --
      My AC stalker: " I personally agree with your posts most of the time, but that won't keep me from modding you troll"
    2. Re:Simply amazing by mrnobo1024 · · Score: 2

      From the linked atariage.com post:

      Press the fire button to jump.
      Press Up to run and to shoot fireballs if you are FireMario.

    3. Re:Simply amazing by Hatta · · Score: 4, Insightful

      Click the link, and you get a picture of a game that looks pretty crappy by Saturn standards. Click the other link and you get a picture of a game that looks amazing by 2600 standards.

      Prevailing wisdom was that an SMB1 clone would not be possible on the 2600. Now it's been done. That's amazing. A 3d SMB is well within the capabilities of the Saturn, and is a worthy hobby project, but not in the same league at all. The Saturn game was written in BASIC, the 2600 game was written in assembly.

      --
      Give me Classic Slashdot or give me death!
    4. Re:Simply amazing by Algae_94 · · Score: 4, Interesting

      I wouldn't proclaim the clone as being done. I watched the demo video and read some of the authors notes. There are some distinct differences that make it not quite a clone. Only one enemy on the screen at a time, automatically getting whatever is in the yellow blocks when they are hit (and they then disappear), no star power. The only enemy I saw was a goomba. It plays remarkably like SMB, but not enough that I would say SMB has been cloned to the 2600.

    5. Re:Simply amazing by Gadget_Guy · · Score: 3, Informative

      The closest we had was Great Giana Sisters...

      Which you can celebrate by joining in at Kickstater for Project Giana, the grandchild of Giana Sisters (8 days to go). Sorry, I don't think they will be targetting the C64.

    6. Re:Simply amazing by Hatta · · Score: 3, Insightful

      "Clone" is a pretty inclusive term in this context. When a game became popular, lots of companies would try to capitalize on the fad by making a similar game. Hence you get "pacman clones" like Ladybug or KC Munchkin, or "Doom clones" like Dark Forces or Duke 3d. In that context, this is clearly a SMB clone. It's worth noting that no other side scrolling platformers exist on the 2600.

      --
      Give me Classic Slashdot or give me death!
    7. Re:Simply amazing by cpu6502 · · Score: 2

      "I find your lack of faith disturbing." Imagine instead that this article was about a port of Final Fantasy 7 to the Super Nintendo and the response it would get.

      Atari sold 30 million consoles. I figure one-quarter of those kids-now-adults still remember the console fondly and will enjoy reading this news. Probably 1 million of us will be curious enough to download and play it. About 1000 will buy the actual cartridge (That's how many bought the arcade-realistic version of PacMan). Those of us who are the Atari generation care just as much as those of you in the SNES generation.

      --
      My AC stalker: " I personally agree with your posts most of the time, but that won't keep me from modding you troll"
    8. Re:Simply amazing by Jeng · · Score: 2

      It's worth noting that no other side scrolling platformers exist on the 2600.

      It's been some times since I've played pitfall, but I guess it didn't scroll, just went from one screen to the next?

      http://www.youtube.com/watch?v=g_AtNY0bYAA

      --
      Don't know something? Look it up. Still don't know? Then ask.
    9. Re:Simply amazing by Hatta · · Score: 2

      Yep. There are some vertical scrolling games on the 2600(e.g. Pitfall II), but for technical reasons vertical scrolling is easier for the hardware to accomplish. Read Racing The Beam(2009) if you're interested.

      --
      Give me Classic Slashdot or give me death!
    10. Re:Simply amazing by petsounds · · Score: 2

      No, there were a couple Koopas in there also, and you can shell them. There's also a fireball mode. The 1 enemy at a time limitation is disappointing, but the CPU is very limited on that machine so...better than nothing. Considering how shitty most 2600 ports were (Pac-Man I'm looking straight at you), this is actually quite amazing.

    11. Re:Simply amazing by Spiridios · · Score: 2

      The game shown here would probably be easier if somebody hacked an origninal NES controller to the 9-pin connector and modified the program a little to read the new voltage values available with the extra couple of buttons.

      No need to hack a controller, just use an SMS controller. They already use a DB9, are pin compatible with Atari, and they have two buttons instead of one. Or try a Genesis controller, they're mostly pin compatible, the extra buttons just have to be read differently.

    12. Re:Simply amazing by mattack2 · · Score: 2

      but the CPU is very limited on that machine so...better than nothing

      What are you referring to? The Atari 2600 uses a 6507, which is basically a 6502 without interrupts and a smaller address space. Is it the speed or the address space, or what, that you're calling limited?

      Basically, the *rest* of the hardware is what I'd say are more limiting.

      The NES uses a CPU based upon a 6502.

    13. Re:Simply amazing by hvdh · · Score: 2

      Is it the speed or the address space, or what, that you're calling limited?

      On the 2600, the CPU has to generate the video signal, each frame (@60/50Hz), all the time.
      The playfield makes up around 50% of the analog video signal's beam time. Therefore, even if you use
      all tricks to have the CPU available for game logic on left, right, top & bottom border, you still have less
      than 50% of the CPU time available.

      If you want to use the hardware sprites (movable overlays), you have
      around 30% CPU time (=0.36MHz) left for game logic.

      http://www.alienbill.com/2600/101/02breach.html

    14. Re:Simply amazing by sa666_666 · · Score: 3, Interesting

      Interesting note: the shield was formed by reading the game code as data (for perceived randomness). So when you look at the shield, in some sense you're looking at the source assembly code. Matrix-style.

  2. Mario Bros by Dwedit · · Score: 5, Informative

    The rule about Super Mario Bros is that you NEVER refer to it as "Mario Bros". They are two completely separate games. Mario Bros was even made for the Atari 2600 back in the day.

    1. Re:Mario Bros by Tarlus · · Score: 3, Insightful

      It gets worse; the source thread refers to it as "Super Mario World" which itself is completely different.

      --
      /* No Comment */
  3. Great, now I feel old. by H0p313ss · · Score: 2

    This must be a new usage of "impressive" with which I was previously unfamiliar

    And stay off the lawn... uh, ugly dead weeds.... damn drought.

    --
    XML is a known as a key material required to create SMD: Software of Mass Destruction
    1. Re:Great, now I feel old. by cpu6502 · · Score: 3, Insightful

      A side-scrolling game on a console that only has 128 bytes of RAM is impressive.

      --
      My AC stalker: " I personally agree with your posts most of the time, but that won't keep me from modding you troll"
    2. Re:Great, now I feel old. by narcc · · Score: 3, Insightful

      Indeed. Side-scrolling on the 2600 is not easy.

      What is so astonishing here is that the developer used batari Basic and not straight 6502 assembly.

    3. Re:Great, now I feel old. by Tempest_2084 · · Score: 3, Informative

      Actually there was one. It was called Fatal Run (sort of a Road Blasters kind of game) but it was only released in Europe (http://www.atariprotos.com/2600/software/fatalrun/fatalrun.htm). There was even a 64K cartridge released in Brazil called MegaBoy but all the space was used by educational questions so it really wasn't a 'game'.

    4. Re:Great, now I feel old. by L1mewater · · Score: 2

      The atari VCS has no frame buffer. Each rectangular pixel is calculated in realtime as the screen is drawn. It is tied very closely to the way that CRT screens draw their picture. They scan left-to-right (depending on perspective) drawing complete horizontal lines from top to bottom of the screen. If I recall correctly, the standard background in one of these games could be up to 40 blocks wide. It's (relatively) straightforward to shift those 40 blocks up or down by just not turning them on until a particular scanline. You can't do this with horizontal location, and horizontal positions have to be able to be calculated down to the cycle. This is really hard to do. You also can't change a sprite's color on a single scanline, and the hardware was never originally intended to support multi-color sprites. That only works due to a hack.

    5. Re:Great, now I feel old. by narcc · · Score: 2

      To add to L1mewater, the PF register is 20 bits wide (made up of PF0, PF1 and PF2) PF0 (4-bits wide) marks the left 4 columns, and PF2 ends in the middle of the display. For the other half of the display, a flag determines if this will be duplicated or mirrored.

      To make matters worse, the bits in PF0 and PF2 are in reverse order.

      So, yes, horizontal scrolling on the 2600 is always impressive.

  4. Business Model? by Dr.+Evil · · Score: 3, Funny

    1. Invent Super Mario Bros for Atari 2600
    2. Time travel to 1982
    3. Profit!

    1. Re:Business Model? by LiENUS · · Score: 2

      if she's a teen now wouldn't that mean at the oldest she was 2 in 95?

    2. Re:Business Model? by jones_supa · · Score: 3, Funny

      Your business model would effectively ruin my childhood.

      No wonder, look at the nickname to whom you replied...

  5. Naming is fucked by Tarlus · · Score: 3, Interesting

    Mario Bros != Super Mario Bros != Super Mario World

    Also, this is far from being a clone...

    --
    /* No Comment */
  6. Which explains the quality by DrYak · · Score: 4, Informative

    Programmed in BASIC.
    Which also explains the end result:

    Saturn is the latest of the "old generation" of 32bits console with really weird architecture.
    It's got dual main RISC CPUs (two Hitachi SH-2. Something like a souped-up 32x (dual SH-1))
    It's got extra CPU (Motorola 68k)
    It's got weird coprocessors (the graphic engine: Some mixed monstruosity between a souped-up tile engine and an early polygon engine with blitter, all this split across 2 chips, and not using triangle as basic poly shape. And a few DSPs trown in the mix)
    And all of this are connected in weird ways, have timing issue to access shared resources, don't all access the same resources, etc.
    And a firmware which was basically what was needed to load a the game.
    It's simply the logical extension of previous generations of console (16 bit consoles which had an extra 8bit chip to handle sound and some specific IO and which didn't have access to all resources. Or like the MegaCD which connected an extra 68k, which could help render advanced graphics effects, but had to pipe them through the main CPU), they tried to cram as many interesting functions in this hardware.

    Contrast this with the first "new gen" 32bits console : the PlayStation.
    Simple "PC-like" design.
    A main CPU (a MIPS), a 3D GPU outputing to a simple framebuffer (although the geometry acceleration is inside the CPU package), a hardware MPEG decoder.
    And that's it.
    Not that much different conceptually, from a PC machine with a Pentium and 3Dfx GPU + Sigma Designs video decoder + Soundblaster PCI cards.

    On the paper, Saturn was fucking incredibly powerful.
    But that requires deep knowledge of the hardware, precise timing and modelling of everything, writing tons of code in assembler, etc.
    Its "dev environment" consisted in reading tons of hardware documentation, and crafting your own stuff in assembler.
    Creating amazing stuff on this machine was more of an art.

    Meanwhile, on the Playstation, all what the devs needed is to fire up a C compiler and use the nice libraries and API that sony provided. (Similar to just writing a regular PC application relying on OpenGL and the like). Its dev environment wasn't that remote to what can be seen in Visual Studio and the like. Just use a standard compiler and the official API. Porting games is a breeze.

    Programming Saturn games required extensive experience and culture in the old-school consoles. Without console know-how, hard to use it to its full potential.
    Programming Playstation games could tap into the small studios which were used to program PC games.

    End result:
    - SEGA's own studios (composed of dev teams used on console and arcade machines) did put some impressive games.
    - Some japanese studios which had a long tradition of console development and were used to "go the assembly way" developped quite a few "japanese-market-only, sorry no ports for you" successes ont the Saturn.
    - Most of the other studios decided to "just say fuck it", they ditched most of the docs, and run the machine as simply as possible: Use only one SH-2, etc.
    - Meanwhile developing on the Playstation was a breeze. Lots of studios which weren't heard in the console world before got suddenly quite some success. Specially lots of north american and european developers.
    - The Playstation also got lots of ports thank to its easy structure.
    Lots of ports of PC games (because the concepts of the sony dev environment map nicely)
    Even ports of japanese RPG which were successes on the Saturn in their home country. (Just because the PS was more popular in foreign market and was easy to port to).
    (what helped the Playstation a lot and worked against the Saturn, is that instead of creating several games for each different console like in the past, studio now preferred to make 1 single game and port it to as much machines as possible. Machine with a standard easy to develop-for architecture were strongly favored above mach

    --
    "Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
  7. Re:Fondly? by TaoPhoenix · · Score: 2

    I was exactly in the target demographic for the Atari 2600, "too young to know better". If I had about 20 more IQ points at the time I would have seen the immense leap in quality between 1982ish to about 1986 when the 8 Bit era was in full swing.

    "Citations as needed"
    http://en.wikipedia.org/wiki/Atari_2600
    "...in 1982, the VCS was renamed "Atari 2600", after the unit's Atari part number, CX2600"
    "It is credited with popularizing the use of microprocessor-based hardware and cartridges containing game code, instead of having non-microprocessor dedicated hardware with all games built in."
    "The console had only 128 bytes of RAM for run-time data that included the call stack and the state of the game world. There was no frame buffer, as the necessary RAM would have been too expensive. Instead the video device had two bitmapped sprites, two one-pixel "missile" sprites, a one-pixel "ball," and a 40-pixel "playfield" that was drawn by writing a bit pattern for each line into a register just before the television scanned that line. ...
    "The video hardware gave the 2600 a reputation as one of the most complex machines in the world to program..."

    If we talk about "progress per year" I was lucky enough to experience it in exactly the correct order, because once I got my Commodore 128 in about 1987 I could never go back to the Atari 2600. Compare that to me being a holdout of Windows XP today and the difference is telling.

    --
    My first Journal Entry ever, in 8 years! http://slashdot.org/journal/365947/aphelion-scifi-fantasy-horror-poetry-webzine
  8. Re:Fondly? by cpu6502 · · Score: 2

    >>>If we talk about "progress per year" I was lucky enough to experience it in exactly the correct order, because once I got my Commodore 128 in about 1987 I could never go back to the Atari 2600. Compare that to me being a holdout of Windows XP today and the difference is telling.

    +1 for the last paragraph.
    I've made the same observation that progress has slowed to almost nothing. I'm still using a PC that is 11 years old and can run the latest software (just need to boost the RAM space). You would be hard-pressed to buy a 1979 Atari computer and be able to play the latest full-screen video game in 1990. Progress was very very rapid in the 80s and early 90s, and then all but stopped.

    BTW I still played my Atari even after my C128 arrived. I even upgraded to a 7800 ProSystem after the old 2600 died. I love old Atari games..... good memories.

    --
    My AC stalker: " I personally agree with your posts most of the time, but that won't keep me from modding you troll"