Beiträge von Henning

    Ist doch genau richtig. Du kannst die Erscheinung der Zeichen verändern, nur deren Bedeutung (Großes H, kleines A, kleines reverses B etc) solltest du halt nicht ändern.

    Mit der billigen Lötstation wirst du spätestens dann Probleme kriegen, wenn die ICs an einer großen Massefläche hängen. Die Fläche leitet die Wärme extrem schnell ab und das Zinn bleibt nicht lange genug flüssig, um es vollständig absaugen zu können. Für sowas brauchst du etwas mehr Leistung, unter 80w wirds nicht bringen. Ich hatte anfangs auch diese Billigstation, hab mir aber aus o.g. Grund eine XYTRONICS LF-2000 zugelegt, kann ich sehr empfehlen.


    Und vorher das Auslöten üben! Sonst verbrennst du die Platine oder reisst Lötaugen/Leiterbahnen ab... man braucht schon ein paar Versuche, bis man den Dreh raus hat.


    Noch ein Tipp: Manchmal bleibt ein letzter Rest Zinn im Bohrloch, der das Beinchen festhält und sich partout nicht absaugen oder mit der Einlötlitze erwischen lässt. Besorg dir eine 0,9mm Kanüle (Apotheke) und feile die Spitze ab, die kannst du dann auf's Beinchen setzen, erhitzen und dann mit langsamem Dehen in das Bohrloch hinein über das Beinchen stülpen. Die Kanüle ist aus Edelstahl und das Zinn haftet daran nicht. So kannst du das Beinchen dann vom Bohrlochrand isolieren.

    Hier eine kurze Statusmeldung:


    Ein weiterer Rutsch Bausätze ist für Juni/Juli geplant.


    Im Moment arbeite ich am Support für den C128. Bei Interesse könnt ihr die Entwicklung auf dem branch c128 auf github verfolgen. Dort ist auch bereits ein vice-patch enthalten, der die xlink-Emulation für den x128 enthält.


    Ein Ram-basierter Server ist schon in benutzbarem Zustand (allerdings vorerst ohne Floppy-Befehle). Eine Kernal-Integration ist ebenfalls geplant. Wie in der C64-Version ist auch hier bereits der Zugriff auf alle Speicher-Konfigurationen möglich. Die --bank Option kann zur Einstellung der vordefinierten Bänke 0-15 verwendet werden, über die Option --memory kann die MMU-Konfiguration ($ff00) alternativ auch manuell gewählt werden. Ansonsten wird alles analog zum C64 funktionieren.


    Gruß,
    Henning

    @ Wolfhard du kannst doch diverse Module auch nutzen in der Ultimate, wie Action Replay, The Final Cartridge III usw. Ich selber habe das noch nicht versucht. Da kann ma sicherlich so einen art "Screenshot" erstellen.


    Nee, das wird nicht gehen, da in diesem Moment die Ultimate-Anwendung den C64 komplett übernommen hat. Das müsste schon innerhalb der Ultimate selbst implementiert werden, oder die Datei müsste vom C64 aus über das DOS-Interface der Ultimate erstmal in den Speicher geladen und von dort gedruckt werden.

    Die von mir gestern zum download bereitgestellte gepatchte x64.exe läuft nicht richtig, wenn ich sie (wie beschrieben) einfach in meinen vorhandenes WinVICE-Installationsverzeichnis kopiere. Die xlink-Emulation funktioniert, aber manche Konfigurationsdialoge werden einfach nicht angezeigt, z.B. "Attach disk image" oder "Sound settings".


    Daher habe ich nun eine vollständige WinVICE-Installation auf meiner Webseite bereitgestellt, mit der diese Fehler nicht auftreten:


    WinVICE-2.4.19-xlink-1.1-x86.zip

    Es gab ja auch schon vor Hennings Release Kontakte zu uns und ich habe mir seine IDE auch angesehen. Sein IDE ist Spitzenklasse und ich gehe davon aus wenn man seinen Atmega Code für den 328er umkompiliert und das Pinout anpasst, das alles auch auf der Servant64 Hardware läuft.


    He, danke für das Lob :)


    Ich bin zuversichtlich, dass ich meine Software auch an eure hardware anbinden kann. Wir arbeiten daran :thumbsup:

    Ich habe jetzt die Version 1.1 veröffentlicht.


    Auf der Software-Seite ist nun eine Emulationsmöglichkeit für VICE und andere Programme hinzugekommen. Dazu habe ich einen Treiber für einen virtuellen Port in xlink implementiert und einen vice-patch erstellt, der diesen virtuellen port an den in vice emulierten Userport anbindet. So kann mein System nun auch mit Vice benutzt werden. Dazu gibt es auf der Website auch eine vorkompiliertes gepatchtes win32-binary von x64. Weitere Informationen findet ihr auf der Webseite. In Kürze: Man startet die gepatchte x64.exe mit der Option -xlink, läd den server oder das kernal image und kann dann den "shm" Treiber von xlink verwenden, z.B. "xlink --device shm load myprog.prg run".


    Auf der Hardware-Seite habe ich eine neue Revision des USB-Adapters erstellt. Hier wurden zusätzliche Schutzwiderstände in die Leitungen zum Userport eingefügt, um diesen vor zu hohen Strömen zu schützen. Es handlet sich dabei nur um eine Vorsichtsmaßnahme. Um die Nutzer der ersten Platine zu beruhigen kann ich sagen, dass ich die Version ohne Schutzwiderstände bereits seit fast zwei Jahren nutze, ohne dass dabei auch nur ein einziger CIA (alt oder neu) beschädigt worden wäre. Ich habe das ausgiebig getestet, indem ich die beiden Ports auch mutwillig über lange Zeiträume gegeneinander habe arbeiten lassen, ohne das dabei etwas passiert wäre (Beide Ports auf Ausgang, alle möglichen Kombinationen von Zuständen). Diese Zustände sind jedoch durch die Software sowieso so gut wie möglich ausgeschlossen.


    Um auf diese Version zu gehen reicht es, die Software neu zu installieren (build & install from source oder den neuen Windows-Installer benutzen). Firmware und C64-Software (server.prg, kernal) wurden nicht verändert und müssen daher auch nicht neu installiert werden.


    @V.I.N.CENT: Freut mich, Danke :)

    Gut, ich wollte Dein Projekt jetzt nicht als Konkurrenzprodukt zu unserem bezeichnen, aber wenn Du es schon ansprichst. ;) Unsere Hardware wäre natürlich auch dazu in der Lage, würde man von der Softwareseite aus in die Richtung entwickeln.


    Ich sehe das garnicht als Konkurrenz :) Die Projekte sind halt nur recht ähnlich und könnten beide auch das realisieren, wofür das jeweils andere primär gedacht ist. Schließlich ist die ganze Idee ja nicht neu -- cbmlink gibts ja z.B. auch schon ewig, nur eben nicht über USB.

    Irgendjemand Henning hat doch genau sowas vor Kurzem in einem Thread vorgestellt, inkl. API.


    Und genau dieses Projekt wurde auch extra für Cross Development ins Leben gerufen. Geht also einen etwas anderen Weg. ;)


    Ja, das stimmt, mein Projekt ist primär für's cross-development gedacht. Allerdings ist die Funktionalität universal genug, um den C64 zu anderen Zwecken fernzusteuern. Z.B. habe ich hier bereits einen (sehr rudimentären) Charset-Editor für den PC auf der Platte, der ein Live-Preview ermöglicht. Auch habe ich auf der letzen 3-Tages-Doreco mit Green zusammen eine experimentelle hardsid.dll implementiert, die über xlink den SID ansteuerte und die wir dem goattracker untergeschoben haben. Im Prinzip hat das funktioniert, war aber trotz der 20kb/s, die mein System leisten kann, zu langsam... ruhige SIDs haben gut funktioniert, aber sobald da aufwändigere Effekte benutzt wurden, wurde es langsam. Ich bin da zu dem Schluss gekommen, das ein solcher "Hardsid" wohl nur über dma am Expansionsport zu realisieren wäre, da das Schaufeln der Daten vom Userport einfach zu langsam ist.


    Live-Previews sollten sich mit meinem System relativ problemlos für vorhandene PC-Editoren relisieren lassen (die xlink.dll kann von so ziemlich jeder Programmier-Sprache angebunden werden). Leider sind die Editoren, die ich bisher gefunden habe, alle closed-source, bis auf HermIRES, aber der code ist nicht gerade "erweiterungsfreundlich". Da mein System bald auch über eine VICE-Emulation verfügen wird, hoffe ich, dass ich z.B. die Autoren von Sprite/CharPad dazu bewegen kann, ein Live-Preview einzubauen. So könnte auch ohne hardware und echten C64 wenigstens die CRT-Emulation des vice für Previews genutzt werden.


    In jedem Fall werde ich mir mal anschauen, ob ich die Servant64 hardware auch über meine Software mit unterstützen kann. Das Baukasten-Prinzip, das ihr hier verwendet, ist ja echt schick, meine (usb) hardware ist da etwas aufwendiger zu basteln (Allerdings biete ich auch an, den SMD-Chip vorzulöten).

    Alternativ lässt sich vice unter cygwin mit Hilfe der cygwin-mingw32-Pakete wie folgt bauen:


    Code
    1. $ CFLAGS='-static-libgcc -static-libstdc++' ./configure --host=i686-w64-mingw32 --build=i686-pc-cygwin
    2. $ make

    Mich würde auch einmal interessieren, was man mit dem Adapter überhaupt anstellen kann. Wirklich echte LAN-Fähigkeit für den C64? Unterstützt die aktuelle Firmware 2.6k das Ding überhaupt schon oder wird die Software erst mit dem kommenden 3.0-Update nachgereicht? Fragen über Fragen...


    Aktuell wird Netzwerkunterstützung nur in der kommenden 3.0 Version implementiert, siehe svn. Ob Gideon da noch einen backport für 2.x macht ist nicht ersichtlich, die sourcen für die 2.6k Application wurden allerdings erstmal in den ordner "legacy" kopiert... daraus würde ich persönlich schließen, dass es wohl keinen backport geben wird. Macht auch nicht wirklich Sinn, die 3.0 ist hauptsächlich die Umstellung der SoftCPU von zpu auf microblaze + netwerkzeugs und neuer USB Implementation.

    Ich habe nun das API der xlink-Bibliothek auf der Projektseite ausführlich dokumentiert.


    Es wird beschrieben, wie sich die vorhandene Funktionalität von xlink in eigenen Programmen nutzen lässt, wie die Datenübertragung im Detail abläuft und wie man den Server um eigene Funktionen erweitern kann, ohne dass der vorhandene xlink-server modifiziert werden muss. Dazu gibt es auch ein kleines Beispiel, das die Nutzung der low-level Funktionen sowohl auf Seiten des C64 als auch auf Seiten des PCs erläutert.


    Im Moment prüfe ich auch, ob es möglich wäre, einen virtuellen Userport in vice zu realisieren und der xlink-Bibliothek einen entsprechenden Treiber hinzuzufügen. So könnte man das System auch ohne Hardware in vice testen und gegen die Schnittstelle programmieren. Ob und wie das vernünftig funktioniert bleibt allerdings abzuwarten.


    Falls weiteres Interesse an Bausätzen besteht, bitte ich euch, dieses kundzutun. Dann kann ich das weitere Vorgehen planen.


    Edit: Bitte teilt mir auch mit, ob ihr den SMD chip (TQFP32, 0.8mil spacing) selbst löten könnt. Wenn nicht kann ich das auch übernehmen.


    Gruß,
    Henning