Keith J. O'Hara

teaching

CPSC 91S

Games Systems: Platforms, Programs & Power (F2023)

overview | logistics | schedule | edstem | assignments | resources

Tentative Schedule (changes frequently)

week date topics readings pattern work assigned
1
PLATFORM STUDIES

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

"Programming as Forgetting"
by Parrish
9/11/2023 hello TIC-80 TIC-80 tutorials; Pippin Barr's snakisms tic 80 platform study (10 PRINT; snake)
9/12/2023 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/15/2023 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)
3
GAMES AT HOME

"Jerry Lawson: The Engineer Who Changed the Game"
9/18/2023 collision detection vectors & driving tutorials TIC-80 mini-lab
9/19/2023 combat [src] & video olympics RtB 12–42; "Untold Story of the Game Cartridge" game loop (astanco1, sconley1)
9/21/2023 mos 6502; hardware; adventure RtB 43-63; "Indigenous Circuits: Navajo Women and the Racialization of Early Electronic Manufacture" double buffer (omedeir1 statach1) HACK: modify an existing 2600 game
4
ATARI 2600

"High Score 1"
9/25/2023 remake workshop day
9/26/2023 emulation 6502 tutorial; "Use of a Game Over: Emulation and the Video"; Atari 1–29 update method (spradha1 vhuynh1)
9/28/2023 pac-man; sprites RtB 65–79; Atari 31–53; distellamap command (ngreer1 rputnam1)
5
ATARI 2600 II

"High Score 2"
10/02/2023 6502 ASM & stella how to hack a rom (battlezone) tutorial; Atari 55–70; 10P 195–242; run it! stella/snake
10/03/2023 yars revenge; input RtB 82–97; Atari 71–98 flyweight (aquresh1 awu2)
10/05/2023 pitfall; procedural graphics; river raid RtB 99-117; Atari 155–164 state (dhawkin1 esmith6)
6
SIMULATION & EMULATION I

"Atari Game Over"
10/09/2023 E.T.; bank switching "Was E.T. Really the 'Worst Game Ever'?" & fixing E.T. Atari 195–201 fixing E.T.
10/10/2023 star wars; pressure cooker; sound RtB 119–135; Atari 171–184 singleton (acole1 aschrad1)
10/12/2023 simulation; civilization "Modeling Indigenous Peoples: Unpacking Ideology in Sid Meier's Colonization"; RtB 137–150 prototype (zkelly1 ylu3)
7 10/16/2023 FALL BREAK
10/17/2023
10/18/2023
8
HACK THE MAGIC CIRCLE

"The Turing Problem"
10/23/2023 hack workshop "Was E.T. Really the 'Worst Game Ever'?" & fixing E.T. Atari 195–201
10/24/2023 REMAKE W_I_P POSTER play-testing
10/26/2023 nintendo; donkey kong Error 1–79 lazy initialization (ptrifon1 yborger1)
9
NES/FAMICOM I

"Story Behind Super Mario Bros. 3"
10/30/2023 pattern & name table NES 1–53; Super Mario Clouds & I Shot Andy Warhol; "NES Memory Visualization" and plots 10 print NES remake
10/31/2023 NES Error 81–115 observer (jben1 rwhite2) DEMAKE: back-port a current game to the NES
11/02/2023 SMB [src]; scrolling Error 116–162; NES 55–68 dirty flag (jreid1 rokayam1)
10
NES/FAMICOM II

11/06/2023 HACK PRESENTATION
11/07/2023 storage; zelda [src] Error 163–196 service locator (twang5 yzhang4)
11/09/2023 controls NES 69–82 event queue (ale3 gmansil1)
11
SOUND

Reliving Nintendo Soundtracks with the Brickster
11/13/2023 sprites & sound NES 83–116; sound tutorial PONG NES remake
11/14/2023 2A03; mega man Error 249–288; "The Women Who Invented Video Game Music" data locality (keith)
11/16/2023 climber NES 117–146 thread pool (lho2 oazuara1)
12
EXPANSION

archiving & game genie
11/20/2023 mappers and interrupts NES 147-167 demake workshop
11/21/2023 dragon quest; game genie Error 197–248 object pool (jnguyen1 ndandre1) MAKE: create a new 8-bit game (2600/NES/TIC80)
11/22/2023 THANKSGIVING
13
SIMULATION & EMULATION II

"American Hysteria #Gamergate"
11/27/2023 advanced lua; turmites; game of life Game of Life; Turmites
11/28/2023 tetris; 6502 ASM reprised tetris AI; NES 171-223 spatial partition (erivkin1)
11/30/2023 emulation II; randomizers; TAS "How 'randomizers' are breathing new life into old games"; Error 289–324 bytecode (bxiang1 okolgel1)
14
NEW DIRECTIONS

"Dr. Gladys West: The Mathematician Who Reshaped Our World"
12/04/2023 DEMAKE WORKSHOP
12/05/2023 simulation; simcity "Model Metroplis"; "Recovering Nintendo's Lost Simcity for the NES" Error 325–331 subclass sandbox (kdandy1 roet1)
12/05/2023 DEMAKE W_I_P POSTER play-testing
12/07/2023 mobile; pokemon "Mobile Frontiers" by Fickle; Error 325–331 type object (eoh2 trazdan1); subclass sandbox (kdandy1 roet1)
15
PATTERNS REPRISE
12/11/2023 advanced lua II lua objects; wireworld make workshop
12/12/2023 proto-VR "Sega VR Revived"; "Unraveling The Enigma Of Nintendo's Virtual Boy"; "The Story of the Power Glove"; early presentations; course evals
16
FINAL
12/19/2023 FINAL PRESENTATIONS (2–5PM)