Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Retro Computing: Spaß mit C64 & 8 Bit

Jörg Neumann
November 06, 2019

Retro Computing: Spaß mit C64 & 8 Bit

Jörg Neumann

November 06, 2019
Tweet

More Decks by Jörg Neumann

Other Decks in Technology

Transcript

  1. Historie • Vorstellung Januar 1982, Winter CES • Verkaufsstart September

    1982 • Ca. 12,5 Mio. verkaufte Geräte - oder doch mehr: 30 Mio.? • http://www.pagetable.com/?p=547 • Commodore produzierte fast alle Bauteile selber oder via Tochterfirmen • Niedrige Produktionskosten • Damals wahnsinnig günstige 595 Dollar • Wurde auch über den Einzelhandel vertrieben • Unterschiedliche Farben und Ausführungen • Großer Zubehör-Markt
  2. Grafik mit VIC-II • Video Interface Chip • Text-Modus •

    40x25 Zeichen • Grafik-Modus • 320x200 HiRes/Monochrom • 160x200 Multicolor • Max. 16 Farben • 2 Farben pro 8x8 Pixel-Bereich • 8 Sprites • 24 x 21 Pixel HiRes • 12 x 21 Pixel Multicolor
  3. Sound mit SID • 3 Stimmen • 4 Wellenformen •

    4 Filter • Ganze Künstlerkarrieren ranken sich um SID (Sound Interface Device) • Rob Hubbard • Chris Huelsbeck
  4. Programmierung - für die „Harten“ • Assembler • 56 Befehle

    / Mnemonics • Kein APIs, keine SDKs • Hexadezimalsystem
  5. Ein kleiner Ausflug in die Welt der Sprites Adresse Beschreibung

    $D000 Sprite 0: X-Position $D001 Sprite 0: Y-Position $D002-$D00F Sprite 1-7: X-&Y-Position $D010 Das High-Bit der X-Position $D015 Sprite sichtbar? (je ein Bit pro Sprite) $D017 Sprite in doppelter Höhe darstellen? $D01B Sprite vor oder hinter der Hintergrundgrafik $D01C Sprite in Hi-Res oder Multicolor-Modus rendern $D01D Sprite in doppelter Breite darstellen? $D01E Kollision zwischen Sprites $D01F Kollision zwischen Sprite und Hintergrund $D025 1. Sprite-Farbe im Multicolor-Modus (für alle Sprites gleich) $D026 2. Sprite-Farbe im Multicolor-Modus (für alle Sprites gleich) $D027 Sprite-0: Farbe - Hauptfarbe des Sprites $D028-$D02E Sprite-1-7: Farbe - Hauptfarbe des Sprites $D000 Sprite 0: X-Position $D010 Das High-Bit der X-Position 300 Pixel 0-255 256-300 Sprite 7 Sprite 6 Sprite 5 Sprite 4 Sprite 3 Sprite 2 Sprite 1 Sprite 0 0 0 0 0 0 0 0 0 Sprite 0 0 Sprite 0 255 Sprite 0 45 Sprite 0 1
  6. River Raid Indizierung in Deutschland In der Begründung des Indizierungsbeschlusses

    der BPjS vom 19. Dezember 1984 hieß es unter anderem: • „Jugendliche sollen sich in die Rolle eines kompromisslosen Kämpfers und Vernichters hineindenken […]. • Hier findet im Kindesalter eine paramilitärische Ausbildung statt […]. • Bei älteren Jugendlichen führt das Bespielen […] zu physischer Verkrampfung, Ärger, Aggressivität, Fahrigkeit im Denken […] und Kopfschmerzen.
  7. Ressourcen Commodore Computer Online Museum http://cbmmuseum.kuto.de/ C64 Hardware Manuals http://www.retro-commodore.eu/c64-hardware/

    VICE - the Versatile Commodore Emulator http://vice-emu.sourceforge.net/ VirtualC64 (macOS only) http://www.dirkwhoffmann.de/virtualc64/ Emu64 http://www.emu64.de/ C64 music for the masses - High Voltage SID Collection http://www.hvsc.c64.org/
  8. Ressourcen Cartridges http://www.lemon64.com/?mainurl=http%3A//www.lemon64.com/apps/list.php%3FGenre%3Dcarts RAM UNDER ROM - A BRIEF LOOK

    INTO C64 MEMORY (64K IS ENOUGH FOR ANYONE) http://dustlayer.com/c64-architecture/2013/4/13/ram-under-rom Assembler programming (Machine Code) http://www.c64.ch/programming/ hello world in commodore 64 assembly (mit TASM) http://codebrane.com/blog/2013/10/25/hello-world-in-commodore-64-assembly/ Commodore 64 Programming #1: A quick start guide to C-64 assembly programming on Windows (mehrteilige Serie) https://digitalerr0r.wordpress.com/2011/03/19/commodore-64-programming-a-quick-start-guide-to-c-64-assembly-programming-on- windows/ Coding for the Commodore 64: What changed in the last 25 years (mit VIELEN LINKS) https://retro.moe/2015/02/01/coding-for-the-commodore-64-what-happened-in-the-last-25-years/
  9. Ressourcen 64bites.com http://64bites.com/episodes/all/ Retro-Programming: C64 Assemblerprogrammierung http://www.retro-programming.de/ Party Quest (Jörg

    Neumann) http://www.gamebase64.com/search.php?a=5&f=3&id=1757&d=30 8bitphotos http://www.8bitphotos.com/
  10. Programmierung Basics 10 PRINT “Hello World” 20 GOTO 10 PEEK

    & POKE (VIC & SID) POKE 53280, 8 POKE 53281, 7 10 POKE 54296,4: POKE 54296,0: GOTO 10 Run LOAD “$”,8,1 LIST 10-5000 RUN 1 2 3