Keith J. O'Hara

teaching

CPSC 91S

Games Systems: Platforms, Programs & Power (F2024)

overview | logistics | schedule | edstem | assignments | resources

Tentative Schedule (changes frequently)

week date topics readings pattern work assigned
1
PLATFORM STUDIES

(listen ahead)
9/03/2024 course introduction syllabus; RtB and 10P forewards 10 PRINT
9/05/2024 platform study: 10: PRINT 10P 1–242; VIC20 and C64 emulators
2
HACKING SYSTEMS

"Programming as Forgetting"
by Parrish
9/09/2024 hello TIC-80; 10 PRINT; snake TIC-80 tutorials; Pippin Barr's snakisms; 1D Games tic 80 platform study
9/10/2024 hacking; remaking; demaking "Hacker" by Coleman; read about, download & play a demake of Halo; "Searching Internet Archive"; TIC-80 memory map and file format REMAKE: reimagine an early game
9/12/2024 before atari: arcade & mainframe: Tennis for Two; Pong; Breakout; OXO; SpaceWar (source) RtB 1–11; A Video Game by Any Other Name; Pixels in Print part 1 and part 2; "The Gender Binary of Computing: Challenging Sexism in Technology" by Zalkikar component (keith) HACK: modify an existing 2600 game
3
GAMES AT HOME

"Jerry Lawson: The Engineer Who Changed the Game"
9/16/2024 6502 ASM & stella 6502 tutorial; how to hack a rom (battlezone) tutorial; Atari 1–31; 10P 195–242; run it! stella/snake
9/17/2024 combat [src] & video olympics RtB 12–42; "Untold Story of the Game Cartridge" game loop (kboonko1)
9/19/2024 mos 6502; hardware; adventure RtB 43-63; "Indigenous Circuits: Navajo Women and the Racialization of Early Electronic Manufacture" double buffer (cdawes1, relkon1)
4
ATARI 2600

"High Score 1"
9/23/2024 collision detection vectors & driving tutorials TIC-80 mini-lab
9/24/2024 pac-man; sprites RtB 65–79; Atari 31–53; distellamap update method (rrajama1, lsuresh1)
9/26/2024 yars revenge; asteroids; input RtB 82–97; Atari 71–98 command (schai1, idiaz1)
5
ATARI 2600 II

"High Score 2"
09/30/2024 E.T.; bank switching "Was E.T. Really the 'Worst Game Ever'?" & fixing E.T. Atari 195–201 fixing E.T.
10/01/2024 pitfall; procedural graphics; river raid RtB 99-117; Atari 155–164 state (nbaldev1, nbrobbe1)
10/03/2024 star wars; pressure cooker; sound RtB 119–135; Atari 171–184 singleton (aobiora1, okhan1)
6
SIMULATION & EMULATION I

"Atari Game Over"
10/07/2024 HACK/REMAKE WORKSHOP
10/8/2024 emulation; state; particles scene management tutorial; "Use of a Game Over: Emulation and the Video"; RtB 137–150 flyweight (psharma1, sxi1)
10/10/2024 entombed (mazes); wabbit; timers "Pioneer Rediscovered: The Woman who Brought Female Representation to Games"; "Entombed: An archaeological examination of an Atari 2600 game"; timers prototype (sbyun1, skim9)
7 10/14/2024 FALL BREAK
10/15/2024
10/16/2024
8
HACK THE MAGIC CIRCLE

"American Hysteria #Gamergate"
10/21/2024 REMAKE/HACK WORKSHOP
10/22/2024 REMAKE W_I_P POSTER play-testing
10/24/2024 nintendo; donkey kong Error 1–79 lazy initialization (kjuarez1, lloisea1, zamjad1)
9
NES/FAMICOM I

"Story Behind Super Mario Bros. 3"
10/28/2024 HACK/REMAKE
10/29/2024 NES Error 81–115; NES 55–62; signal observer (kasakaw1, thaeger1, tsallie1) DEMAKE: back-port a current game to the NES
10/31/2024 SMB [src]; scrolling Error 116–162; NES 63–68; 75–82 dirty flag (jliss1, mmartin5)
10
NES/FAMICOM II

Tetris Movie
11/04/2024 pattern & name table NES 1–53; Super Mario Clouds & I Shot Andy Warhol; "NES Memory Visualization" and plots 10 print NES remake
11/05/2024 storage; vram buffers; zelda [src] Error 163–196 event queue (zcrawfo1, jmchenr1)
11/07/2024 controls NES 69–84
11
SOUND

Reliving Nintendo Soundtracks with the Brickster
11/11/2024 sprites & sound NES 83–116; sound tutorial pong NES remake
11/12/2024 2A03; mega man Error 249–288; "The Women Who Invented Video Game Music"; thread pool (jgallar1, vsumano1)
11/14/2024 climber NES 117–146 object pool (dburger1, jstump2)
12
EXPANSION

archiving & game genie
11/18/2024 mappers and interrupts NES 147-167
11/19/2024 emulation II; expansion dragon quest; game genie; Error 197–248 spatial partition (dchong1, mfeseha1) MAKE: create a new 8-bit game (2600/NES/TIC80)
11/20/2024 randomizers; TAS "How 'randomizers' are breathing new life into old games"; Error 289–324 bytecode (bgottli1, kwang4)
13
SIMULATION & EMULATION II

"The Turing Problem"
11/25/2024 tetris; 6502 ASM reprised tetris AI; NES 171-223; "34 years later, a 13-year-old hits the NES Tetris 'kill screen'" tetris
11/26/2024 simulation; civilization; simcity "Modeling Indigenous Peoples: Unpacking Ideology in Sid Meier's Colonization"; "Model Metroplis"; "Recovering Nintendo's Lost Simcity for the NES" service locator(zyao1, zyou1)
11/28/2024 THANKSGIVING
14
NEW DIRECTIONS

"Dr. Gladys West: The Mathematician Who Reshaped Our World"
12/02/2024 DEMAKE WORKSHOP
12/03/2024 DEMAKE W_I_P POSTER play-testing
12/05/2024 mobile; pokemon "Mobile Frontiers" by Fickle; Error 325–331 type object (mkumbon1, kmavera1)
15
PATTERNS REPRISE
12/09/2024 advanced lua; turmites; game of life lua objects; wireworld; Game of Life; Turmites data locality (keith) make workshop
12/10/2024 proto-VR "Sega VR Revived"; "Unraveling The Enigma Of Nintendo's Virtual Boy"; "The Story of the Power Glove"; early presentations; course evals; mediator publish/subscribe (fcantor1, nphilli2)
16
FINAL
12/17/2024 FINAL MAKE PRESENTATIONS (7-10PM)