Writing NES Games! With Assembly!!

I’d like to take you on a stroll down memory lane and dig into the internals of the Nintendo Entertainment System (NES) to figure out how it works. While we’re there, we’ll see how to build a game for the NES using 6502 assembly with the help of a few modern tools. We’ll gain a new respect for ’80s developers and an appreciation for the high-level languages we have today!
EVENT:
!!Con 2017
SPEAKER:
Christian Joudrey
PERMISSIONS:
The original video was published with the Creative Commons Attribution license (reuse allowed).
CREDITS:
Original video source:
Nguồn: https://hungba.com.vn/
Xem thêm bài viết khác: https://hungba.com.vn/game/
Comments
arcadia09
It feels like there's poproxk in my ears
_Red_Mage_ 1671
Hahaha! As a developer I cannot help but think that "FCEUX" was intentionally used to make it phonetically sound like "F**k You" (FC-Eux). I usually name my custom apps with some sort of clever name or inside pun or put stuff like this in my code all the time
Brayden B
it really makes you appreciate just what they could do back in the 80s
ElegyForTheMasses
Within 10 seconds, we all realized he was from Canada. Then immediately after he said "I'm from Canada"
heaintloveu
Neat and all, but I’m at 4.51, and how many times is he going to boast that he’s used to working with “high level language”
Jack 3G
Nintendo devs should watch this
V O
Ruby developer that uses a Mac … People please wake-up
christian monturano II
My parents had zelda in the 80s and zelda.and still have the same games saved feom the 80s so it lasts
Fopenplop
i saw the first slide and secretly hoped that the whole slideshow was gonna be played off an NES
Azoz054 alothman
Can I program nes games with python?
Unusual Post
Lot of respect for what so many developers had to go through and work around to get a game out for what sometimes may not been considered by many to be a good game.
ft pm
Currently studying for my exams (one of the core subjects is assembly). Next semester we are writing a big project in assembly. Seeing you excited about the process makes me excited as well. Nice video!
Usam
Very simple binary format — NO.
Joseph Wagner
Merry-o
Guinea Pig Gaming
I'm trying to do this with CrystalTile2 and HxD, but I can't seem to understand how to set the address that is the start of the actual program. I also can't seem to get the CHR ROM in the right area, which is also weird, especially because I have looked at many many ROMs with CrystalTile2 and they seem to be in the same place my CHR is. I would really appreciate help from anyone. (I am not paying 30 USD for an activation code for NESMaker. That is ridiculous.)
Edit: I just copied the first three hundred bytes of code from Super Mario Bros to my nesgame.nes file, and deleted instructions (replace them with zeroes) until the game looped the stack. Then I would add the instruction that made it work from there. I changed the palette by first stopping the rendering system, putting in the palette address 3f00-3f1f in PPU_ADDR and stored the data I want at the address at PPU_DATA. Then I turned rendering back on, and it wasn't a 'blank' screen, it was a 'black' screen. nesdev helped me figure out the names of the ppu registers. Also you can use PPU_ADDR and PPU_DATA to change anything in the ppu ;).
6502.org/tutorials/6502opcodes gives you the hex values for every instruction.
First milestone 😀
R69NiX
"Turns out" this video was good!
teskio999
Awesome! It really helped me get my head around it! Thank you!!
Sam vz
mairio
Steve Lalancette
No… My battery on my Zelda cartridge works fine in 2019. My saves are working since the 80's.
T R
same story happen to me once lol
Bonzi Buddy
Says Aboot and then says he's from Canada. That's the definition of redundancy!
Logan Harris
…. Marryo??
tr br
Did he claim it was hard to find NES or 6502 documentation? Lol ok.
Vincent Dagenais
Hey Chris ! nice video! MTL represent 😉
What would be the steps to achieve a remake of Little Samson game on a NES cartridge.
Is there any tutorials on how to think graphics and animations for NES games?
In 2 years I would like to show the world a game of mine… any cues and clues?
Raymond Doetjes
Is it normal?.., euhmm depends, if you’re a commodore geek, you’d be like…
LDA #$00
STA $D020
STA $D021
LDA #$20
clear:
LDX #$00
STA $0400,X
STA $0500,X
STA $0600,X
STA $0700,X
DNE loop
LDA #$71
STA $0400
And that’s after 30 years 🙂
Leonardo Gsperin
Wow sublime
Amritesh Ganiger
She : He might be thinking about me.
He: How the heck this Nintendo works?
Bloody Pommel Studios
8:13 If the NES only uses 8 bits for button press data how does the zapper work?
ohnoitschris
Did he ever open source his work?
Frank Aiello
Great video, thanks for sharing.
ziad sherif
You seem like a good guy good luck mate. Also I would like to thank you because I started a course about game development in LUA about a year ago and had to stop for whatever reason and after seeing this video I embarked on the course again.