Slide 1

Slide 1 text

Jörg Neumann @joergneumann Christian Weyer @christianweyer Night Session

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

Die Geburt des Personal Computers

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

Chuck Peddle

Slide 9

Slide 9 text

Chuck Peddle

Slide 10

Slide 10 text

No content

Slide 11

Slide 11 text

Die Eroberung des Wohnzimmers

Slide 12

Slide 12 text

Jack Tramiel

Slide 13

Slide 13 text

„WE NEED TO BUILD COMPUTERS FOR THE MASSES, NOT THE CLASSES!“

Slide 14

Slide 14 text

No content

Slide 15

Slide 15 text

No content

Slide 16

Slide 16 text

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

Slide 17

Slide 17 text

No content

Slide 18

Slide 18 text

No content

Slide 19

Slide 19 text

No content

Slide 20

Slide 20 text

No content

Slide 21

Slide 21 text

No content

Slide 22

Slide 22 text

No content

Slide 23

Slide 23 text

No content

Slide 24

Slide 24 text

https://www.youtube.com/watch?v=tCWQqy7RZYU (Sekunde 30 ☺)

Slide 25

Slide 25 text

Akustikkopler

Slide 26

Slide 26 text

Vorreiter und Pionier

Slide 27

Slide 27 text

No content

Slide 28

Slide 28 text

No content

Slide 29

Slide 29 text

Wirklich für alle

Slide 30

Slide 30 text

No content

Slide 31

Slide 31 text

No content

Slide 32

Slide 32 text

No content

Slide 33

Slide 33 text

Günstig, nicht billig

Slide 34

Slide 34 text

Frühjahr / Sommer 1983

Slide 35

Slide 35 text

Frühjahr / Sommer 1985

Slide 36

Slide 36 text

Frühjahr / Sommer 1986

Slide 37

Slide 37 text

Herbst / Winter 1986

Slide 38

Slide 38 text

„Google das mal schnell...“ RTFM :-)

Slide 39

Slide 39 text

No content

Slide 40

Slide 40 text

Cross-Plattform

Slide 41

Slide 41 text

No content

Slide 42

Slide 42 text

Futurama

Slide 43

Slide 43 text

Terminator

Slide 44

Slide 44 text

Betriebssystem? Pfft...

Slide 45

Slide 45 text

No content

Slide 46

Slide 46 text

Das erste IoT-Device!

Slide 47

Slide 47 text

64KB RAM – eigentlich Speicheraufbau Praktisch: Hardware+OS+SDKs in einem! ;)

Slide 48

Slide 48 text

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

Slide 49

Slide 49 text

No content

Slide 50

Slide 50 text

Sound mit SID • 3 Stimmen • 4 Wellenformen • 4 Filter • Ganze Künstlerkarrieren ranken sich um SID (Sound Interface Device) • Rob Hubbard • Chris Huelsbeck

Slide 51

Slide 51 text

Programmierung • BASIC v2 • Keine IDE! • Kein Syntax-Highlighting! • Kein IntelliSense! • Einfach machen!

Slide 52

Slide 52 text

BASIC Demo

Slide 53

Slide 53 text

Programmierung - für die „Harten“ • Assembler • 56 Befehle / Mnemonics • Kein APIs, keine SDKs • Hexadezimalsystem

Slide 54

Slide 54 text

Hardware-Architektur http://www.retro-programming.de/programming/assembler/asm-grundlagen/kleine_hardwarekunde/

Slide 55

Slide 55 text

Der Bildschirm- speicher

Slide 56

Slide 56 text

Makro Assembler

Slide 57

Slide 57 text

No content

Slide 58

Slide 58 text

ASSEMBLER Demo

Slide 59

Slide 59 text

Aber es geht NOCH mehr…

Slide 60

Slide 60 text

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

Slide 61

Slide 61 text

… und Action! Games, Games, Games

Slide 62

Slide 62 text

The Last Ninja

Slide 63

Slide 63 text

Maniac Mansion

Slide 64

Slide 64 text

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.

Slide 65

Slide 65 text

Summer Games

Slide 66

Slide 66 text

C64 heute

Slide 67

Slide 67 text

C64 heute

Slide 68

Slide 68 text

Lebendige Community

Slide 69

Slide 69 text

C64 auf dem iPad https://github.com/Spider-Lab/C64

Slide 70

Slide 70 text

We love C64 Jörg Neumann @joergneumann Christian Weyer @christianweyer

Slide 71

Slide 71 text

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/

Slide 72

Slide 72 text

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/

Slide 73

Slide 73 text

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/

Slide 74

Slide 74 text

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