Assembly Programming & Colour - Computerphile

preview_player
Показать описание
The simple task of turning a screen red takes on new complications when you have no graphics libraries and no drivers - Assembly coding for the Sega Megadrive/Genesis with Matt Phillips.

This video was filmed and edited by Sean Riley.

Рекомендации по теме
Комментарии
Автор

5:53
Matt:"boring bit, boring bit, boring bit, cut this out, cut this out, cut this out"
Sean: "Nah man, screw you, I find this interesting! I won't cut this

harrysvensson
Автор

I love seeing assembly code. I wrote a graphics driver for the TI-84+CSE in Z80 Assembly. There was no software-level stuff for graphics in the slightest nor was there a GPU. You had to directly write bits to the input pins of the LCD controller chip (ILI9335). The Z80 assembly chip only could address at maximum 16-bit values, this means that you couldn't even control the entire screen at one time. Instead the chip supported a "window" feature where you give it coordinates and a width and height and it gives you control of a little portion of the screen called a "window". You could use this to draw sprites by selecting the coordinates and width and height of where you wanted the sprite to be and then outputing all the pixels of the sprite into the window. I've never seen anyone use an actual GPU tho through assembly so this is definitely pretty interesting, figuring out how to use a GPU is hard enough as it is in C lol.

amihartz
Автор

"The two hardest problems in computer science are naming things, cache invalidation, and off-by-one errors" (with apologies to Phil Karlton)

killfalcon
Автор

13:32 “fingers crossed it should be red” *press keyboard, screen goes orange “there we go”

Discount_Friendly
Автор

Bruh how is this dude so chill? He’s a good teacher too.

LumiLumi
Автор

"Wait have I just debugged it?"
- Me every day

noxabellus
Автор

I always remember flicking the switch on my Genesis and seeing that first flicker of initilization just before the SEGA logo would pop up. Now I know why. Thanks!

jaredmaxwell
Автор

I work in real estate. Why am I up late watching videos about programming game graphics in assembly? Damn youtube rabbit holes.

tonybobay
Автор

This guy is totally to the METAL! more videos with megadrive guy pls! :)

Nebuloa
Автор

These vid's are fantastic. The end bit was the perfect ending as well lol

StreuB
Автор

I used to code 68000 assembly for Amiga demos ~30 years ago. It's amazing how much I forgot. I never used macros, and I think I didn't even use constants that much, certainly not for addresses.
Not sure if i wanted to learn it again. But the video certainly pulled back nice memories. Thanks!

segmentkings
Автор

Once the hard work's done...the hard work's done

robertkraus
Автор

The assembly looks pretty clean compared to what I'm used to from Z80 or 6502.

goeiecool
Автор

20 years ago, I wrote a blaster game in assembly. It was CGA. I was so proud of myself. My parents always wonder why I always look at my computer screen and worry I will be socially dysfunctional.

crazieeez
Автор

Sega: "hah you will never guess the security pass code to make ROMs!"
Coder from 2018: "Its just 'SEGA' isn't it?"
*Sega would like to know your location*

Decco
Автор

A lot of work for changing the background screen, really appreciate it.

digitalzoul
Автор

I remember doing this kind of graphics assembly programming 13 years ago with an Atari ST. Good memories, a lot of fun.

mdmenzel
Автор

This brings back memories.
He is a better man than me.
I don't see myself deliberately going back to old CPUs and using Assembler.
Good luck.

nqinadlamini
Автор

there's a great feeling of freedom when coding this way for a system you become deeply in-tune with. no messy API red tape to deal with.

erikhicks
Автор

The dreaded off-by-one error. Been there. A lot ...

MrTridac