Commodore Cross-Entwicklung unter Windows XP

Mit den geeigneten Tools kann man unter Windows [XP] schnell Programme entwickeln und dank des VICE-Emulators auch gleich testen. So kommt man schnell zum Ergebnis.

Installieren

Folgende Programme werden ben├Âtigt, sie von der Homepage des jeweiligen Herstellers downloaden. Von npp die Zip-Version, nicht die mit dem Installer.

  • acme0.96.4-1win.zip von https://forum.emu64.net/acme/
  • WinVICE-3.1-x86.7z von https://vice-emu.sourceforge.io/windows.html
  • make-3.81.exe von http://gnuwin32.sourceforge.net/packages/make.htm
  • npp-7.8.7.bin.zip von https://notepad-plus-plus.org/downloads/v7.8.7/ (32-Bit-Version zip-Package nehmen)

So installieren: in c:\ einen ordner cbm anlegen Die Ordner mit den Programmen dorthin verschieben, und der Einfachheit halber in acme, make, npp und vice umbenenen. Achtung - bei Make braucht es das Programm make.exe und die 2 dlls. Siehe Bild. Man kanns nat├╝rlich auch ganz anders machen, ich habe mich jetzt mal f├╝r das entschieden. Diese L├Âsung hat den Vorteil, dass man dann ganz einfach das Verzeichnist c:\cbm zippen und auf einen anderen Rechner verschieben kann. Alle Einstellungen usw. sind dann erhalten. Man kann dieses Zipfile dann z. B. cbm-xdev-xtra-0.20.zip nennen und auf dem USB-Stick mitf├╝hren.

cbm-xdevel-install

Los gehts - einfaches Projekt Basic Boot

folgende 4 Dateien mit Notepad++ erstellen (oder einfach das zip mit allem unten Downloaden und entpacken).

constants.asm

;; Start of BASIC program
basic = $0801

;; Background color
bgcol = $d021

;; Border color
bocol = $d020

basic-boot.asm

; A BASIC booter, encodes `10 SYS <address>`.
; Macroified from http://www.pouet.net/topic.php?which=6541

!source "constants.asm"

!macro start_at .address {
  * = basic
  !byte $0c,$08,$00,$00,$9e
  !if .address >= 10000 { !byte 48 + ((.address / 10000) % 10) }
  !if .address >=  1000 { !byte 48 + ((.address /  1000) % 10) }
  !if .address >=   100 { !byte 48 + ((.address /   100) % 10) }
  !if .address >=    10 { !byte 48 + ((.address /    10) % 10) }
  !byte $30 + (.address % 10), $00, $00, $00
  * = .address
}

; A cooler example is to write
;
;   10 SYS <address>: REM <backspaces>Your comment
;
; When the user types LIST, he will just see
;
;   10 Your comment
;
; but still be able to run it.
; For this, see http://codebase64.org/doku.php?id=base:acme-macro-tut

index.asm

!source "basic-boot.asm"

+start_at $0900

; Set background and border to black
ldx #$00
stx bgcol
stx bocol

; Flicker border and background
.loop
  inc bgcol
  inc bocol
  jmp .loop

makefile

TARGETS :=  index
C1541 := c:\cbm\vice\c1541.exe
X64 := c:\cbm\vice\x64sc.exe

.PRECIOUS: %.d64

all: $(TARGETS)

%.prg: %.asm
	c:\cbm\acme\acme.exe --cpu 6510 --format cbm --outfile $@ $<

%.d64: %.prg
	$(C1541) -format foo,id d64 $@ -write $<

%: %.d64
	$(X64) $<

clean:
	rm -f $(TARGETS) *.prg *.d64

Das eigentliche Programm inst index.asm. Konstantendefinition sollte klar sein. Basic-Boot.asm generiert die SYS-Zeile, die das dahinter assemblierte Programm startet. Das Makefile ist die Steuerdatei f├╝r das ganze, um so mehr zu automatisieren. Braucht man nicht zwingend, wenn man eh nur eine Datei assemblieren will und alles mit include l├Âst.

Download basic-boot.zip

Jetzt kann man make eingeben, das Programm wird ├╝bersetzt und im Vice gleich gestartet. Ich gebe es hier komplett mit dem Pfad ein. Aber man kann auch einfach path setzen:

path %PATH%;c:\cbm\make

cbm-make

Ausf├╝hren des Make-Kommandos direkt aus Notepad++

NppExec-Plugin installieren

  • folgendes von https://sourceforge.net/projects/npp-plugins/files/NppExec/ downloaden

NppExec_06RC3_dll.zip

Die Datei NppExec.dll aus dem Archiv in den Plugin-Folder der Notepad++-Installation kopieren, in diesem Fall

c:\cbm\npp\plugins

  • Notepad++ starten, dann das Plugin so installieren:
  • Settings -> Import -> Import plugin -> NppExec.dll ausw├Ąhlen und importieren. cbm-make
  • Notepad++ neu starten.

NppExec-Plugin konfigurieren

  • Starte Notepad++
  • F6 dr├╝cken, um das Execute-Fenster zu ├Âffnen
  • die folgenden Kommandos eingeben:
    npp_save
    CD $(CURRENT_DIRECTORY)
    c:\cbm\make\make.exe
    

    cbm-make

  • Save klicken
  • Einen neuen Namen f├╝r das Skript eingeben (Bsp. ÔÇťbasic_bootÔÇŁ)
  • Gehe im Men├╝ zu: Plugins -> Nppexec -> advanced options -> Menu Item
  • In der Combobox mit Namen ÔÇśAssociated ScriptÔÇÖ das Script im Dropdown-Menu ausw├Ąhlen, Add/Modify ausw├Ąhlen und OK klicken.

cbm-make

  • Notepad++ neu starten
  • Gehe im Men├╝ zu: Settings -> Shortcut mapper -> Plugins commands -> Skript-Name suchen (hier ganz unten!)
  • Skript-Name anklicken, gew├╝nschten Shortcut definieren (F10), OK klicken cbm-make
  • ├ťberpr├╝fen, ob jetzt durch das dr├╝cken von F10 der Befehl auch wirklich ausgef├╝hrt wird

cbm-npp-execute

https://www.c64-wiki.de/wiki/ACME

https://csl.name/post/c64-coding/

https://vice-emu.sourceforge.io/

https://www.c64-wiki.de/wiki/C64_Crossdevelopment_unter_Windows_mit_Notepad%2B%2B

Artikel erstellt am: 11 June 2020 , aktualisiert am 11 June 2020