Skip to content

Instantly share code, notes, and snippets.

💭
debugging 28 year old games. for fun.

tomaes

  • Germany
View GitHub Profile
@tomaes
tomaes / glitch101
Last active Aug 29, 2015
toggle bit 5 'til you pass out. (c64)
View glitch101
0 s=53265:a=32:b=223:c=53280:pokec,.:pokec+1,.
1 pokes,peek(s)ora:pokes,peek(s)andb:::::::::::goto1
@tomaes
tomaes / vscroll
Created Mar 5, 2014
an attempt to do a credits scroll routine in glorious Commodore Basic v2 (c64); works, but sucks. ;)
View vscroll
1 rem roll dem credits
2 s=53265:k=240:a$(.)="yo!":a$(1)="let's scroll":a$(2)="upwards":a$(3)="smoothly"
3 printa$(i):i=(i+1)and3:forn=7to.step-1:pokes,peek(s)andkorn:forx=.to49:nextx,n:goto3
@tomaes
tomaes / glitch rumba
Last active Aug 29, 2015
rhythmic audio / video glitching in 11 bytes (c64)
View glitch rumba
;
; glitch f-art
;
* = $1000
;
loop EOR $A2
NOP ; makes everything look much saner ;)
; AND $C5 (fake interactivity :P)
STA $D011
STA $D418
@tomaes
tomaes / text noise
Created Mar 8, 2014
19 bytes text noise effect (c64)
View text noise
;
; fill screen with 'text noise' (19 bytes with SEI)
;
* = $1000
SEI
loop EOR $D012
STA $0400,y
STA $0400+256,y
@tomaes
tomaes / mini maze
Created Mar 15, 2014
shortest maze generator on the 64? (and most other Commodore machines)
View mini maze
0 ?spc(rnd(.)+.5)"#";:run
@tomaes
tomaes / glitchshifer_code_review
Created Mar 15, 2014
glitchshifter by 4mat explained
View glitchshifer_code_review
; glitchshifter by 4mat explained
;
* = $7c ; starts in Zeropage. Overwrites some BASIC interpreter parts;
; faux autostart in VICE due to RUN (+return! just that would
; suffice)
SBC $a1 ; Accu minus (slowly updated) system timer byte ($A1)
SEI ; stop interrupts to halt timer temporarily and add some speed-up,
; inner loop starts
ORA $a2 ; bitwise OR'ed Accu with fresh timer data from fast sys timer ($A2)
; (but: the Accu rarely changes in this very fast inner loop)
@tomaes
tomaes / bella maze
Created Mar 17, 2014
Nicely colored and evolving maze-like patterns.
View bella maze
0 poke646,2+(peek(143)and3):printchr$(206.5+rnd(1)-(peek(161)/2and31));:run
@tomaes
tomaes / hrhr
Created Mar 19, 2014
An unlikely, but perfectly valid Commodore Basic program. :) (this works, because any non-literal (or even emptiness) after "go to" = 0 and "go to" is an alternative version of "goto", that no one ever used.)
View hrhr
0 GO TO INFINITY
@tomaes
tomaes / raster-fari
Created Mar 22, 2014
16 bytes for a fairly nice looking (and flicker free) static raster effect (c64)
View raster-fari
* = $7c ; zeropage boot-up (for VICE)
sei ; no interupts, no flickering
sty $d011 ; background frame is now everywhere
cpy $d012 ; wait for next raster line
bne *-3 ;
sty $d020 ; set fullscreen color
iny ; wait 2 lines (looks best)
iny ;
bvc *-10 ; loop quickly
@tomaes
tomaes / snaaakes
Created May 7, 2014
long-winded obstacle things coming your way (c64)
View snaaakes
* = $7c
loop tax
sta $0774,x
jsr $e965 ;\n
jmp loop
You can’t perform that action at this time.