Kann es mit Makros zu tun haben? Die aufzulösen ist komplex, evtl. ist da ein Fehler drin...
Mit Makros mach ich weniger.
Ich habe aber die Vermutung, dass das hinzufügen oder entfernen von Kommentarzeilen einen Schiefstand erzeugen könnte.
Es gibt 130 Antworten in diesem Thema, welches 16.682 mal aufgerufen wurde. Der letzte Beitrag (
Kann es mit Makros zu tun haben? Die aufzulösen ist komplex, evtl. ist da ein Fehler drin...
Mit Makros mach ich weniger.
Ich habe aber die Vermutung, dass das hinzufügen oder entfernen von Kommentarzeilen einen Schiefstand erzeugen könnte.
Kann es mit Makros zu tun haben? Die aufzulösen ist komplex, evtl. ist da ein Fehler drin...
Also ich denke, man kann es so reproduzieren.
Man hat diesen Code aktiv in einer Vice-Instanz am Laufen, über VS64 gestartet:
(es sollte mit jedem Code und Kommentar reproduzierbar sein, ich illustrier das hier der Einfachheit halber aber mit meinem echten Codestück)
Dann fügt man einen Kommentar ein, zB vor TXA
jsr b_skip_comma
jsr b_parse_uint8_to_X
; check X-register
txa
bne + ;not zero, check for 1
ldx #$3f
jmp ++
Wenn man nun einfach das Reload-Icon drückt, also die laufende Vice-Instanz mit dem aktuellen Code neu resettet (nicht Vice stoppen und neu starten), dann wird die Zeile mit dem Kommentar aktiv angezeigt, während schon TXA ausgeführt wird.
Beendet man Vice und startet es über VS64 neu, dann passt die Position aber wieder.
Wenn man direkt in der Nähe einer Kommentarzeile oder Leerzeile arbeitet, dann kriegt man das relativ schnell mit, dass diese als Codezeile markiert wird.
Ist man aber in einer Codepassage, wo das nicht der Fall ist, kanns schon mal verwirrend werden.
Das hilft. Super!!
Ich schaue, wann ich Zeit finde, um mir das genauer anzusehen.
DANKE!!
Zwei Fragen / Bitten / Vorschläge hätte ich ![]()
Wärs möglich, bei VARIABLES auch die VDC-Register anzuzeigen, wenn der C128 aktiv ist?
Bitte melde dich an, um diesen Anhang zu sehen.
Zweite Frage:
ich arbeite gelegentlich auf meinem alten Laptop. Der hat als zweite Festplatte noch eine Platte die sich dreht.
Dadurch dauert es etwas länger, dass VICE startet, und VS64 scheint dann die Gedult auszugehen und in einen Timeout zu laufen.
Wenn der VICE dann da ist und ich nochmal auf Play drücke, funktioniert der Connect eh problemlos. Aber es ist halt ein extra-klick.
Wärs möglich, das Timeout irgendwo anzugeben? In der Doku hab ich dazu nix gefunden.
Danke!
Hi. Schaue ich mir an.
Gib mir ein bisschen Zeit, ich komme gerade nicht wirklich dazu, große Dinge zu bauen... aber vielleicht ist der Aufwand nicht zu groß und ich kann es mit dem nächsten Minor-Update herausgeben.
PS. Problematik: ich habe bis auf ein bischen Googeln keine Ahnung vom C128, und die Register des VDC muss man erstmal verstehen ...
Gib mir ein bisschen Zeit,
Überhaupt kein Stress. Das alles soll Spaß machen ![]()
Problematik: ich habe bis auf ein bischen Googeln keine Ahnung vom C128, und die Register des VDC muss man erstmal verstehen ...
Ja, kein Thema. Das geht wohl den meisten so.
Es würde aber völlig reichen, einfach die Register-Inhalte darzustellen.
Im Vice-Monitor werden die Register über Eingabe von io d600 dargestellt.
(C:$c1f1) io d600
VDC:
>C:d600 a2 40 .@
VDC Internal Registers:
00: 7f 50 66 49 9b e0 64 8c fc e1 a0 e7 3e 80 04 b0
10: 00 00 20 9e 00 00 78 e8 a0 c7 ff 00 3f e7 00 08
20: 1f 40 7d 64 f0 3f
VDC Revision : 2
Vertical Blanking Period: Yes
Light Pen Triggered: No
Status : Ready
Active Register: 33
Address Mask : $ffff
Memory Address : $209e
BlockCopySource: $1f40
Display Mode : Bitmap & Attributes, Non-Interlaced
Screen Size : 80 x 100 chars
Character Size : 8 x 2 pixels (9 x 9 visible)
Active Pixels : 640 x 200
Frame inc. Sync: 1024 x 312 @ 50,080128 fps
Screen Memory : $3e80-$7cff (Size $3e80)
Attrib Memory : $0000-$1f3f (Size $1f40)
Charset Memory : $2000-$3fff (Size $2000)
Cursor Address : $04b0
Alles anzeigen
Die Auflistung, die da gezeigt wird, wäre garnicht nötig. Die reinen Byte-Werte vom oberen Bereich wären schon mal ein super erster Schritt.
Aber wie gesagt: stressfrei ![]()
Danke!
Du kennst aber schon die "normalen" Features im Watch-Fenster, oder?
Da kannst du relativ einfach die Werte entweder einzeln oder als Byte-Array anzeigen lassen. Im README sind einige Beispiele beschrieben -- zumindest wäre das ein schneller Workaround.
Wegen Vice-Timeout .. habe tatsächlich fest einen Wert (5 Sekunden) benutzt... und vergessen das konfigurierbar zu machen... ![]()
Ich mache jetzt 10 als Default und packe es in die Settings.
Du kennst aber schon die "normalen" Features im Watch-Fenster, oder?
Ja, die nutze ich ausgiebigst. Die sind Klasse.
Aber ich hab in der README nicht rausgefunden, wie ich das auf die VDC-Register anwenden kann.
So wie Vice das macht, kriegt man ja die I/O Werte eines Bereichs geliefert. (mit io d600)
Bzw, ähnlich gelagerte Frage: wie würde ich denn das in WATCH machen, damit ich unterscheiden kann, ob ein bestimmter Bereich aus dem RAM oder aus dem ROM gelesen werden soll?
Oder aus RAM-Bank 0 oder 1?
Das gibt's noch nicht, vor allem deshalb nicht, weil ich da stark auf die Ideen der User angewiesen bin.
Bisher denke ich mir vieles aus, wenn ich mal (und das ist sehr, sehr selten) was für den C64 mache, und das sind eher Lernprojekte als richtige Projekte...
Also (und das geht an alle im Forum!) -- es wäre extrem interessant, wenn viele hier ihre Art zu Arbeiten erzählen würden, auch welche Art von Projekten, etc...
Grundsätzlich denke ich, wird VS64 nie einen Umfang vom C64Studio, etc. bekommen (dahinter steckt extrem viel Aufwand, Leidenschaft, Erfahrung und Energie!),
zumindest nicht, solange ich VS64 alleine entwickle...
Input, Feedback, Anregungen sind immer sehr Willkommen - und ich lerne immer gerne was dazu (vor allem vielleicht bald mehr zum C128)...
Grüße,
Roland
Release v2.5.22 ist auf github:
Bitte melde dich an, um diesen Link zu sehen.
Change Log:
Readme:
Bitte melde dich an, um diesen Link zu sehen.
Aber jetzt hätte ich eine kleine Bitte (und ja, das kann ich alles schnell Googeln,
aber evtl. hat jemand schnell eine Minute Zeit...)
Könnte jemand den C64 startup-code (ACME) schnell für C128 patchen? Ich wollte schnell mal schauen,
ob der Debugger überhaupt anspringt, oder sofort abschmiert (was er sowieso gerade bei x128 (statt x64sc) tut...
Falsche Startadresse, tipp ich mal. Statt *=$0801 nur *=$1C01.
Arndt
Startadresse, plus die SYS-Adresse muss auch angepasst werden. Sowas:
* = $1c01
!byte $0B,$1C,$0A,$00,$9E,$37,$31,$38,$31,$00,$00,$00
ACME braucht dringend ein !basic ![]()
Funktioniert. Ich hatte nur wegen einem schönen Leerzeichen nach SYS das Offset falsch...
DANKE!! (Dann kann ich bald mal loslegen).
In VSCodium, unter Linux Mint, ist deine Erweiterung nicht aufgeführt.
Ist die Erweiterung Linux-kompatibel und gibt es eine Möglichkeit die "Schnelleinrichtung" durchzuführen?
The quickest start is by opening the command palette and run the "VS64: Getting Started" command.
vs64 sollte auf Windows, Linux und MacOS funktionieren. Zu VSCodium kann ich keine Aussage treffen.
Ersteinmal vielen Dank für deine tolle Extension für VSCode.
Ich hätte ein Featurewunsch:
Im Debug Memory Bereich wäre es schön wenn man sich auch ein Block im Speicher jenseits von Zeropage und Stack anschauen könnte, vielleicht auch in 8er oder 16er Blöcken, so dass man nicht eine ellenlange horizontale Textzeile hat. Was auch helfen würde, wäre in der Watch Sektion einen Bereich wählen zu können z.B: $400...$500,8 so dass der Speicher von $400 bis $500 mit 8 Spalten angezeigt werden könnte.
VSCodium-Problem gelöscht
Unter Linux Mint 22.1 Visual Studio Code installiert, wie Bitte melde dich an, um diesen Link zu sehen. beschrieben (Methode 1) und die VS64-Erweiterung über den Marketplace.
Läuft jetzt ![]()
Frage, wenn ich den VICE projektbezogen von x64 auf xvic umstellen möchte, wo geht das?
Frage:
Ich habe versucht, Code, den ich im C64-Studio erstellt hatte, mittels VS64 auszuführen:
Dann kommt folgende Meldung
Bitte melde dich an, um diesen Anhang zu sehen.
Wie migriert man richtig vorhandene .asm-Dateien in ein Projekt?