Emulation von HP-Taschenrechnern auf dem Atari 800XL

Post on 13-Aug-2015

142 views 0 download

Transcript of Emulation von HP-Taschenrechnern auf dem Atari 800XL

Emulation vonHP-Taschenrechnern auf dem Atari 800XL

Norbert Kehrer

VCFe, München, 2. Mai 2015

Übersicht

Hewlett-Packard-Qualität Klassische HP-Taschenrechner Hardware und Maschinensprache Taschenrechnersoftware Emulation auf alten Homecomputern Demo

Hewlett-Packard-Qualität Klassische HP-Taschenrechner Hardware und Maschinensprache Taschenrechnersoftware Emulation auf alten Homecomputern Demo

HP-Taschenrechner emulieren

HP stand für Spitzenqualität bei Taschenrechnern Vorreiter bei wissenschaftlichen und

Finanztaschenrechnern Sehr gute Verarbeitung Hochwertige Rechenroutinen Ausgezeichnete Dokumentation Hochpreisig

HP-Taschenrechner emulieren

Hewlett-Packard-Qualität Klassische HP-Taschenrechner Hardware und Maschinensprache Taschenrechnersoftware Emulation auf alten Homecomputern Demo

Der HP-35 war der erste für die Technikerhemdtasche (1972)

Der HP-80 war der erste für die Buchhalterhemdtasche (1973)

Der HP-45 hat mehr Techniker-funktionen und Stoppuhr (1973)

Der HP-55 war ein Programmierbarer (1975)

HP-Taschenrechner emulieren

Hewlett-Packard-Qualität Klassische HP-Taschenrechner Hardware und Maschinensprache Taschenrechnersoftware Emulation auf alten Homecomputern Demo

Kompakter Hardwareaufbau

Register als wichtigste Speicher

Register sind in Felder gegliedert

HP hat BCD-Fließkommazahlen

0 1 9 7 0 0 0 0 0 0 0 0 0 119,7

9 1 2 3 0 0 0 0 0 0 0 0 0 2-123

0 6 6 0 0 0 0 0 0 0 0 9 9 70,0066

Die CPU stellt einen passenden Befehlssatz bereit Arithmetische Operationen (+, -, inc, dec) Transfer Speicher/Register Register Laden von Konstanten in Register ROM-Bänke selektieren Sprünge und Unterprogrammaufrufe Tastenabfrage, Display ein/aus Sonstige

Feldselektoren für arithmetische Operationen auf „Registerteile“• M Mantissa • MS Mantissa and Sign • X Exponent • XS Exponent Sign • S (Mantissa) Sign • P Nibble Nummer “P“• W Word (ganzes Register) • WP Nibbles 1 bis P

Beispiele für Befehle

C + 1 C [XS] A + C C [M] A EXCHANGE C [W] LOAD CONSTANT 8 IF S1 # 1 GO TO LNC9 JSB NORMALIZE RETURN

HP-Taschenrechner emulieren

Hewlett-Packard-Qualität Klassische HP-Taschenrechner Hardware und Maschinensprache Taschenrechnersoftware Emulation auf alten Homecomputern Demo

Software der HP-Rechner in Patenten veröffentlicht

Oder: Chips „decappen“ und ROM-Bereich ablesen

HP-Taschenrechner emulieren

Hewlett-Packard-Qualität Klassische HP-Taschenrechner Hardware und Maschinensprache Taschenrechnersoftware Emulation auf alten Homecomputern Demo

Emulieren auf 8-Bit-Rechnern ist ganz gut machbar Einfache Maschinensprache Keine zeitkritische Grafik Kleine Programm-ROMs Kleines RAM Open-Source-Emulatoren in C als Vorlage

(z.B. Nonpareil)

Register, Programm-ROM und Interpreterschleife Hauptspeicherbereiche für

Register und SpeicherProgramm-ROM

Interpreter: loop: op_code = rom[PC++] function_addr = address_table[op_code] jsr (function_addr) jmp loop

HP-Taschenrechner emulieren

Hewlett-Packard-Qualität Klassische HP-Taschenrechner Hardware und Maschinensprache Taschenrechnersoftware Emulation auf alten Homecomputern Demo

Demo am Atari 800XL und am Commodore 64 1975, anstatt des HP-Rechners: Einlage am Sparbuch: EUR 300 5% Zinsen Heute?

Danke !

http://members.aon.at/nkehrer/