Hallo Besucher, der Thread wurde 9,5k mal aufgerufen und enthält 14 Antworten

letzter Beitrag von sauhund am

Bedienungsanleitung für NQL-HD V0.15 Firmware

  • Dies ist ein Anleitungsentwurf für die Firmware von NLQ, wer diese haben möchte schickt eine Mail an NLQ siehe NLQ-HD V0.15 Firmware für IEC-ATA-V2


    Die NLQ-HD-Firmware ist Freeware. Die Files sind angehaengt. Sie sind fuer die IEC-ATA-V2-Hardware und duerfen nicht auf eine andere Hardware geflasht werden. Die Installation ist etwas fummelig:


    1. FLASHEN (OBLIGATORISCH)
    Zuerst musst du C-NLQ-FLASHER starten und NH1IEAT0.BIN flashen.


    Das macht man wie folgt:
    - C64 und Floppy ausschalten
    - IEC-ATA an Strom und seriellen Port anschliessen (ohne HDD)
    - Jumper J-C auf 1-2 stecken, Jumper RESET offen lassen
    - C64 und Floppy anschalten
    - "C-NLQ-FLASHER" von Diskette laden und starten
    - Dem Bildschirmdialog folgen und die Datei "NH1IEAT0.BIN" auswählen und laden
    - Jetzt Jumper J-C auf 2-3 stecken, Jumper RESET schliessen
    - Die Sicherheitsabfragen des Programmes bestätigen
    - Bei der Auswahl zwischen "C" und "D" beim ersten Bespielen "C" wählen, um alles neu aufzusetzen.
    - Den Flashvorgang bestätigen und zuschauen, bis es fertig ist
    - Jetzt Jumper J-C auf 1-2 stecken und Jumper RESET wieder öffnen
    - Das Programm verlassen


    2. KALIBRIEREN (OBLIGATORISCH)
    Danach musst du irgendeine HD anschliessen und C-NLQ-CAL&CON starten. Falls das Calibrationbyte falsch ist, waehlst du am besten 'A' fuer automatische Berechnung.


    Das Kalibrationsbyte ist fast immer falsch, also
    - Das Programm "C-NLQ-CAL&CON" laden und starten
    - Die Abfragen beantworten (pal/ntsc, iecata, Oszi j/n) - normalerweise mit p, y, n abzuschliessen
    - Es erfolgt ein erster Kalibrationslauf (der Bildschirm flashed dabei), der mit dem Ergebnis endet, dass das Ding kalibiriert werden muss
    - "A" drücken, um die automatische Kalibrierung zu starten
    - Das Programm durchläuft nun mehrere Kalibrierungsläufe, bis ein guter Wert gefunden wurde und das Programm stoppt
    - Jetzt noch einmal bestätigen und es wird ein letzter Kalibrierungslauf gemacht
    - Das Programm geht nun in den Menu-Modus


    3. KONFIGURIEREN (OBLIGATORISCH)


    Im Hauptmenue tippst du spaeter am besten 'W' fuer Write EEPROM und laedst ein Default-Config-File mit der gewuenschten Devicenummer von Disk und schreibst es ins EEPROM.


    Wir laden nun ein Default-Config-File von der Diskette, um die Einstellungen nicht alle von Hand machen zu müssen:
    - "W" eingeben, um in den Ladedialog zu gelangen
    - Falls die Diskette nicht in Laufwerk 8 liegt, "D" drücken und den entsprechenden Laufwerksbuchstaben eingeben
    - Jetzt "$" drücken, dann die vier Zeichen löschen und RETURN drücken
    - Das Verzeichnis wird angezeigt. Prüfen, ob die DNxx.NH1 Dateien dabei sind
    - Standardmässig werden fünf Default-Config-Files mitgeliefert für die Laufwerksnummern 8 bis 12 (DN08 bis DN12)
    - "F" drücken und den Namen des gewünschten Files eingeben (z.B. "DN12")
    - Das Default-ConfigFile wird nun geladen und in den AVR geschrieben
    - Das Programm geht nun wieder in den Menu-Modus


    Danach muss vermutlich wieder das Calibrationbyte mit 'A' fuer automatisch berechnet werden.


    - Nach dem Schreiben des Default-Config-Files prüft das Tool die Kalibrierung des AVR erneut, da der Wert durch das Default-File wieder auf 255 gesetzt wurde
    - Also wieder mit "A" einen automatischen Kalibrierungslauf starten, wie oben beschrieben
    - Das Programm geht nun wieder in den Menu-Modus


    Sodann drückst du 'E' fuer EEPROM-configuration und speicherst den soeben berechneten Wert ins EEPROM, damit er beim naechsten Einschalten stimmt.


    - Als erstes wird der Kalibrierungswert angezeigt, der gerade ermittelt wurde - mit RETURN bestätigen.
    - Jetzt alle weiteren Punkte mit "N" überspringen bis zur letzten Abfrage
    - Hier den Punkt "C" auswählen, um die KOnfiguration in's RAM zu speichern.
    - Das Programm geht nun wieder in den Menu-Modus


    Wenn du willst, dann kannst du die Konfiguration mit 'E' anschauen und bei Bedarf die emulierte Geraeteadresse auf einen Wert zwischen 8 und 30 einstellen.


    Das geht wie folgt:
    - Erneut alle Menüpunkte mit "N" überspringen bis Du zu dem Punkt "emulated device entry number 0" kommst
    - Jetzt "Y" eingeben
    - "E" für Enable eingeben
    - Bei der "emulated devicenumber" die gewünschte LW-Nummer eintragen (8 bis 30) und mit RETURN bestätigen
    - Alle weiteren Menüpunkte wieder mit "N" für No überspringen
    - Am Ende erneut mit "C" bestätigen, um die Konfiguration wieder in das RAM zu speichern
    - Das Programm geht nun wieder in den Menu-Modus


    4. STATUSMELDUNG ANPASSEN (OPTIONAL)


    Nun können wir noch die Statusmeldung des IEC-ATAv2 verändern (dies ist allerdings optional). Dazu müssen die Fehlermeldungen manuell geladen werden. Eigentlich sind diese bereits in den Default-Konfigurationsdateien enthalten, daher ist dies wirklich nur notwendig, wenn man die Statusmeldung ändern will:
    - Dazu wählt man den Menupunkt "M"essages aus.
    - Im ersten Schritt kann man nun die Statusmeldung des IEC-ATA anpassen (z.B. "MEIN IEC-ATAv2")
    - Dann wird die Datei "NH-ERRORMESSAGES.SEQ" geladen und in den AVR geschrieben
    - Das Programm geht nun wieder in den Menu-Modus


    5. KONFIGURATION SPEICHERN (EMPFOHLEN)


    Man sollte zu diesem Zeitpunkt die nun erfolgte Konfiguration abspeichern, um beim nächsten Mal diese als Default-Wert laden zu können:
    - Menupunkt "S" auswählen
    - Laufwerk zum Speichern mit "D" auswählen
    - Mit "F" den Dateidialog öffnen und einen Namen vergeben (z.B. "X11")
    - Die Konfigurationsdatei wird nun unter dem Namen X11.NH1 gespeichert und kann beim nächsten Mal anstelle der Defaultkonfiguration geladen werden (s.o.)


    - Das IEC-ATAv2 ist jetzt soweit eingerichtet
    - Man kann das Programm nun mit "Q" verlassen


    6. BETRIEB


    ---

    Wie im Tread
    AVR removed = Serial Port hangs not
    ersichtlich, ist es absolut wichtig den/die Jumper der HD auf Master zu stellen. Falls die HD irrtümlich der Slave ist, dann hängt die NLQHD-Firmware im Reset in einer Endlosschleife, die rote LED leuchtet und der Bus ist blockiert.


    Edit by FXXS: Anmerkung von NLQ & Einleitungsatz eingefügt

  • damit das nicht untergeht hab ich den Beitrag noch mal hier her kopiert...


    SUPI! :)
    Ich wollte das selbst noch vorschlagen, war aber heute früh (1:00 ...) zu müde, um es noch in Worte zu formulieren... ;)


    Kann man es so einrichten, das AntaBaka *immer* diesen ersten Post editieren kann? Dann wäre die korrekte Anleitung immer an erster Stelle!


    Oliver W.

  • Kann man es so einrichten, das AntaBaka *immer* diesen ersten Post editieren kann? Dann wäre die korrekte Anleitung immer an erster Stelle!

    Soweit ich weiß geht das nicht ohne größere einstellungsorgien in der Woltlab Software, allerdings kann ich zusagen das ich bei Bedarf zeitnah die jeweils letzte Version ins erste posting editiere...


    sl FXXS

  • Du kannst den Text übrigens auch gerne in Deine Anleitung mit aufnehmen, falls Du möchtest.
    Allerdings halt nur für die deutsche Version... hm, ist auch blöd.

  • Danke für das Angebot. In der Anleitung ist ein Link direkt hierher; ich denke, das sollte reichen.

    Ah okay, das hatte ich nicht gesehen :)
    Ja, das dürfte reichen.

  • Sorry das ich Das hier ausgrabe.
    In letzter Zeit häufen sich einige Eigenarten.
    Hab heuer 2 IEC-ATA in Händen gehabt die zerflasht waren oder wo aus welchem Grund auch immer das Flashem am Cevie nicht gelang. Nu hat man ja eventuell nen passenden ISP Progger zur Hand und fummelt das zu Fuss wieder gerade.
    Gerade da finde ich weder in der Beschreibung der Firmware noch sonstwo (eventuell bin ich auch zu blind) die passenden Fuses noch wann und wie das Quarz gesetzt werden muss.
    Wie gesagt, ich kenne das Teil selber nicht.
    Hat jemand nen Hint wo ich meine Wissenslücken darüber stopfen könnte?

  • Hab heuer 2 IEC-ATA in Händen gehabt die zerflasht waren oder wo aus welchem Grund auch immer das Flashem am Cevie nicht gelang. Nu hat man ja eventuell nen passenden ISP Progger zur Hand und fummelt das zu Fuss wieder gerade.
    Gerade da finde ich weder in der Beschreibung der Firmware noch sonstwo (eventuell bin ich auch zu blind) die passenden Fuses noch wann und wie das Quarz gesetzt werden muss.


    War da die Firmware von Jochen (NLQ), oder die Dienstagstreff FW drauf? Für die NLQ Firmware wird ein anderer (aktuellerer) Flasher benötigt, als für die Dienstagstreff Firmware! Normalerweise hätte aber wenigstens das *komplette löschen* am C64 möglich sein müssen, mit dem NLQ-Flasher. Danach evtl. ein Test mit der Blinke-FW. Sollte das alles nichts helfen, wäre eine Mail an Jochen gut gewesen: Es könnte auch ein bisher nicht entdeckter Bug sein, den man so noch nicht feststellen konnte...
    Eine Angabe welche Fuse gesetzt sein müssen, gibt es nicht: Der NLQ-Flasher am C64 ist so "intelligent", das dies alles automatisch passiert. Ebenso das kontrollieren auf mögliche Falsch-Eingaben des Users. Spätestens wenn Du den Atmel am PC mit dem ISP Progger komplett "leer" gemacht hast, muß das flashen am C64 wieder funktionieren!!


    Oliver W.

  • Ja, dachte ich mit schon. Hatte aber einen Deliquenten der behauptete den at162 aus einem iec-ata gezogen zu haben welcher per Fuse ein externes Quarz verlangte. Spätestens da wäre Ende mit der Flasherintelligenz gewesen weil ein Quartz wart da nirgendwo drauf.

  • Zitat

    Hab heuer 2 IEC-ATA in Händen gehabt die zerflasht waren oder wo aus welchem Grund auch immer das Flashem am Cevie nicht gelang. Nu hat man ja eventuell nen passenden ISP Progger zur Hand und fummelt das zu Fuss wieder gerade.
    Gerade da finde ich weder in der Beschreibung der Firmware noch sonstwo (eventuell bin ich auch zu blind) die passenden Fuses noch wann und wie das Quarz gesetzt werden muss.
    Hatte aber einen Deliquenten der behauptete den at162 aus einem iec-ata gezogen zu haben welcher per Fuse ein externes Quarz verlangte.


    Hier sind die Fuses:
    Fuse low: 226 $e2
    Fuse High: 217 $d9
    Fuse extended: 255 $ff (not written at all)
    Lock Bits: 254 $fe
    Es kann leider vorkommen, dass eine zusätzliche Floppy den Flashvorgang stört. Ich habe z.B eine 1581, die, wenn sie eingeschaltet ist, den Flashvorgang (ganz selten) stört (aber auch sonst mittendrin abstürzt. Ich vermute, dass ich eine Leiterbahn beschädigt habe, als ich das ROM auslötete um JiffyDOS einzubauen). Wenn ein zusätzliches Laufwerk mitten im Flashen die Clock-Leitung ändert, dann verschiebt das die Bytes beim Flashen um ein Bit. Wenn dabei ausgerechnet eine vier-Byte-Reihenfolge entsteht, die die Fuses ändert, dann kann tatsächlich der AVR so programmiert werden, dass er einen externen Quarz braucht. Da keiner vorhanden ist, kann man in diesem extrem seltenen Fall den AVR gar nicht mehr flashen. In der Anleitung des Flashers steht extra, dass man nur IEC-ATA und eine einzige 1541 während des Flashens anschließen soll/muss (Ich mache das aber auch selber nicht). Die neueren Flasher versuchen solch eine Bit-Verschiebung zu erkennen (indem sie nach dem Flashen die Fuses auslesen und schauen, ob sie irrtümlich geändert wurden). Sollte dies der Fall sein, dann wird zumindest wieder das Fuse-Byte für den Takt korrekt eingestellt, sodass man den AVR zumindest nochmals flashen kann. Es ist also absolut wichtig immer den aktuellen Flasher zu benutzen, momentan den aus V0.27: C-NLQ-FLASHER488. Man kann damit auch die Dienstagstreff-Firmware flashen, wenn sie als *.BIN (nicht als *.HEX) vorliegt. Die Wandlung kann man mit dem Tool hex2bin.exe von der Atmel-Homepage machen.