6502 Emulator PiPico

#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
#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

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren