OK, TheRYK, danke für die Info, ich denke dann hab ichs verstanden.
Mir gings auch eher um das nachladen von PRGs die ursprünglich nicht dafür entwickelt wurden.
Gruss,
Zaadii
File nachladen
-
awsm -
20. Mai 2015 um 13:51 -
Erledigt
Es gibt 26 Antworten in diesem Thema, welches 5.595 mal aufgerufen wurde. Der letzte Beitrag (
-
-
All das geht übrigens auch in BASIC:
Bitte melde dich an, um diesen Link zu sehen. -
Das war's!!
Klasse, es läuft!
Vielen Dank an alle Beteiligten. 15 Minuten und die Sache war gelöst - kann mit kein besseres Forum vorstellen.Hier nochmal der lauffähige Code falls später mal jemand ein ähnliches Problem hat:
Code
Alles anzeigen!cpu 6502 !to "build/loader.prg",cbm ; output file * = $0801 !byte $0d,$08,$00,$00,$9e,$20,$34,$39,$31,$35,$32 * = $c000 dec $d021 dec $d020 lda #fnameend-fname ldx #<fname ldy #>fname jsr $FFBD ; call SETNAM lda #$01 ldx $BA ; last used device number bne skip ldx #$08 ; default to device 8 skip ldy #$01 ; not $01 means: load to address stored in file jsr $FFBA ; call SETLFS lda #$00 ; $00 means: load to memory (not verify) jsr $FFD5 ; call LOAD bcs error ; if carry set, a load error has happened stx $2d ; Neu! sty $2e ; Neu! jsr $e453 ; prepare BASIC pointers for RUN jsr $a660 ; jsr $a68e ; RUN jmp $a7ae ; error ; Accumulator contains BASIC error code ; most likely errors: ; A = $05 (DEVICE NOT PRESENT) ; A = $04 (FILE NOT FOUND) ; A = $1D (LOAD ERROR) ; A = $00 (BREAK, RUN/STOP has been pressed during loading) dec $d020 sta $0401 ; error code ausgeben fname !scr "ABSPANN" fnameendMeine 6510 Codingzeiten liegen zwar schon über 2 Dekaden zurück (Amiga 680x0 ASM hat mir dann doch besser gefallen, daher code ich das auch heute noch :D), aber im Fehlerfalle dürfte Dein Programm einen schönen Absturz hinlegen, da nach sta $0401 kein valider Opcode steht. Oder überseh' ich da was?

-
aber im Fehlerfalle dürfte Dein Programm einen schönen Absturz hinlegen, da nach sta $0401 kein valider Opcode steht. Oder überseh' ich da was?
deine augen truegen dich nicht.
-
ja im Codebase Snippet, um das es hier geht, stand afair dort noch ein RTS nach dem Errorhandler

-
Ein RTS am Ende hätte ich da auch erwartet.

-
Eigentlich sollte es wohl !pet und nicht !scr sein, da die Kernal-Routine PETSCII und keine Screencodes erwartet.
This.
Ich empfehle dringend, den Unterschied zwischen "!raw", !pet" und "!scr" nachzulesen und zu verstehen. Ansonsten wird da Weinen von, sobald ein Dateiname mit Groß- und Kleinbuchstaben verwendet wird, und dann geht das Ganze von vorn los. -