6502 Emulator PiPico

OP #7878774
Lesenswert?
• ▲
▼

Der Junior Computer war mit einem 6502 ausgestattet:

http://retro.hansotten.nl/6502-sbc/elektuur-junior/elektor-junior-literature/elektor-books/

Da hier in einem anderen Thread über die Tonerzeugung mit diesem Computer gesprochen wird und vermutlich kaum noch jemand diese Hardware hat, hier die teilweise Nachbildung der Funktionalität in einen PiPico.

Installation:

  1. PiPico stromlos machen
  2. PiPico Tast gedrückt halten
  3. Einstecken und warten, bis PiPico Laufwerk erscheint
  4. u2f Datei auf Laufwerk schieben

fertig.

Bedienung:

  • Arduino IDE als Terminal
  1. x ins Terminal eintippen, um aktuelles Programm zu unterbrechen
  2. online Assembler aufrufen https://www.masswerk.at/6502/assembler.html
  3. Blink Programm eintippen oder reinkopieren
  4. Assemble drücken
  5. Hex Werte in Arduino-Terminal kopieren
  6. Programm mit 300:g starten

Blinky:

1
    .org $0300
2

3
    lda #$1
4
    sta PBDD     ; set PB0 to output
5

6
start:
7
    lda #248
8
    sta TIMER_DIV1024 ; start timer mit prescaler => ~2Hz
9

10
wait:
11
    lda TIMER_READ
12
    bne wait ; Warte, bis timer 0
13

14
    ; port B0 umschalten
15
    lda PBD     ; Read port B
16
    eor #$01    ; Toggle bit 0
17
    sta PBD     ; Write back
18

19
    jmp start
20

21
; MOS6532 PIA addrese $1A80
22
PBD=$1A82
23
PBDD=$1A83
24
TIMER_READ=$1A84 ; timer read register
25
TIMER_DIV1024=$1A97 ; address to start timer prescaler 1024 and no Interrupt
OP #7880917
Lesenswert?
• ▲
▼

Der Emulator hat eine kleine Speichererweiterung bekommen: statt 1k RAM sind es jetzt 2k RAM :-)

Als Demo die Umsetzung der berühmten Klingel:
Beitrag "Klingel mit 100 Melodien - last minute Weihnachtsgeschenk"
(es sind 4 der Melodien implementiert)

Als Compiler habe ich jetzt ca65 verwendet:
https://cc65.github.io/doc/ca65.html

Angehängte Dateien:

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.