Zie de bytes bewegen
Sneekie heeft geen "slangobject". De slang, muren, harten en pijlen zijn gewoon tekens in het schermgeheugen, en de game leest en schrijft dat geheugen direct. Stuur hieronder en zie het gebeuren: het scherm bovenaan en het ruwe geheugen eronder zijn dezelfde bytes. Elke zet is een paar peeks en pokes — live rechts getoond. Eet een hart en ergens verschijnt een klaver; de vier pijlen patrouilleren zelfstandig.
Elke cel is twee bytes (teken, daarna helderheid/kleur-attribuut), geadresseerd met offset = (rij − 1) × 160 + (kolom − 1) × 2. Dit is een hoek van 22×15 uit het echte 80×25-scherm — dezelfde formule, dezelfde 160-byte rijstap.
Dat is de hele truc achter de code uit 1988. Bekijk hem in de bron op de uitleg-pagina, of naast de JavaScript-port op de migratie-pagina.
De tekens achter de bytes
Elk teken dat je net zag bewegen — de slang, de muren, het hart — is één van de 256 tekens die in hetzelfde IBM VGA 8×16 ROM-font zitten waarmee de game tekent. Elk teken is 16 bytes, en elke byte is één rij van 8 pixels: een bit dat aan staat licht een pixel op. Dat hele font zit ingebakken in game.js. De gekleurde tekens zijn degene die Sneekie echt in het videogeheugen poket — beweeg over of tik op een cel om hem te ontleden.