EasyFlash Beta-Test

Es gibt 307 Antworten in diesem Thema, welches 58.448 mal aufgerufen wurde. Der letzte Beitrag (28. Oktober 2009 um 23:04) ist von AntaBaka.

  • Wie sieht es denn an der restlichen Betatesterfront aus?

    Macht doch mal ne kurze Meldung in der Form ASSYxxxxxx funktioniert oder funktioniert nicht.
    Falls nicht, dann bitte wo der Fehler aufgetreten ist > Fehlermeldung? oder stürzt EasyProg ab?


  • Den Fehler mit der fehlenden Meldung habe ich behoben: Es war ein Optimizer-Fehler des Compilers, deswegen war der auch so schwer zu finden. Jetzt habe ich den aktuellen Snapshot des cc65 und es geht.

    Whoo. Du codest das in C?
    Nicht schlecht! also dein Vertrauen im Compiler... Hut ab.
    Auch die zeitkritischen Sachen? wie Flash R/W?

    ... ich hätt da Angst das das Timing nicht passt...

  • Whoo. Du codest das in C?
    Nicht schlecht! also dein Vertrauen im Compiler... Hut ab.


    Alles, was High-Level ist, also z.B. die Oberfläche und die Behandlung der verschiedenen CRT-Typen, ist in C. Der cc65 ist dafür auch sehr ausgereift, allerdings schleichen sich wohl von Zeit zu Zeit Fehler in den Peephole-Optimizer ein. Es hat sich aber endlich jemand hingesetzt und eine Testsuite dafür zusammengestrickt, so dass diese Fehler hoffentlich in Zukunft früher bemerkt werden können. Sowas in C zu machen ist einfach eine Sache der Zeitersparnis. Schließlich habe ich ca. Faktor 5 weniger Zeit als noch zu Schul- und Studienzeiten.

    Du wärst überrascht, wie viele bekannte Coder sich auf der cc65-Liste rumtreiben :)

    Zitat

    Auch die zeitkritischen Sachen? wie Flash R/W?


    Nein, die natürlich nicht. Alles, was schnell sein muss, ist in Assembler implementiert. Wenn ich mal Speicher sparen muss, werde ich bestimmte Teile, die jetzt noch in C sind, auch nach Assembler portieren. Der cc65 eignet sich (wie jeder richtige C-Compiler) gut, um die Sprachen zu mischen. Flash R/W ist übrigens aus Software-Sicht nicht zeitkritisch, aber aus Benutzersicht ist Assembler wg. der Geschwindigkeit vorteilhaft :) Wenn der BASIC-Interpreter im Ultimax-Modus laufen würde, könnte man den Flash sogar mit POKE von BASIC aus schreiben. Würde dann vermutlich mehrere 10 Bytes pro Sekunde schaffen :)

    Das EasyProg der ultimative Board-Tester geworden ist, liegt hier wahrscheinlich daran, dass durch Schreibzugriffe auf die Register die GAME- und EXROM-Leitungen umgeschaltet werden, und das mehrere 100 mal pro Sekunde. Wenn da irgendwas nicht stimmt, hat der Rechner eine falsche Speicherkonfiguration und hängt sich auf. Wenn man bedenkt, was Jens in seiner aktuellen Hardware für Handstände macht, um auf allen Timing-Varianten zuverlässig zu laufen, sind wir mit unseren einfachen Mitteln schon ziemlich weit gekommen.

    Zitat

    Ich habe das jetzt auf 3 Stück 250407 getestet. Bei einer war auf Anhieb alles OK, bei der zweiten musste ich den PLA-Ersatz gegen eine Orginale PLA tauschen und das offenbar defekte Kernal gleich mit. danach läuft auch diese Platine mit EF problemlos.
    Die letzte hatte einen fiesen CPU Fehler aber auch die geht jetzt mit dem EF problemlos.


    Das klingt etwas beruhigend. Hab mich schon wieder am Reißbrett gesehen. Naja, bei Znarf klemmt noch was. Warten wir noch das eine oder andere Experiment ab und entscheiden dann, ob die aktuelle EF-Hardware so okay ist oder nicht. Selbst wenn nur 5% der C64s nicht funktionieren, wäre das nicht 100%ig zufriedenstellend.

    Zitat

    Macht doch mal ne kurze Meldung in der Form ASSYxxxxxx funktioniert oder funktioniert nicht. Falls nicht, dann bitte wo der Fehler aufgetreten ist > Fehlermeldung? oder stürzt EasyProg ab?


    Ja, das wäre toll. Bis jetzt hat es ja bei fast allen auf Anhieb funktioniert, da wäre es trotzdem schön zu wissen, auf welchen Maschinen das war.

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.

    Bitte melde dich an, um diesen Link zu sehen.

  • Super, dann eignet sich das EF auch als PLA Ersatz Erkenung ... :roll2:


    Womit bewiesen wäre, dass die PLA Ersatz Skeptiker immer Recht hatten.

    Bitte melde dich an, um diesen Link zu sehen. --- Bitte melde dich an, um diesen Link zu sehen. --- Bitte melde dich an, um diesen Link zu sehen.

  • Ich hatte gestern 2 Boards (250407 Rev B) welche einwandfrei im Normalbetrieb liefen , die Diagnose meldete auch keine Fehler aber mit dem EF wollten beide nicht so recht bzw. eigentlich wollten beide Boards das Easyprog nicht!

    Soll ich mir alle ICs aus der Liste besorgen oder reicht der 175er?

    Code
    # 1 IC 74HCT00
    # 1 IC 74HCT02
    # 1 IC 74HCT74
    # 1 IC 74HCT174
    # 1 IC 74HCT175

    Hoffentlich hat die der Conrad auch lagernd!
    znarF

    Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen.

  • Diddl: Wo Du gerade hier bist: In *diesem* Moment wünsche ich mir allerdings einen PLD auf dem EF, dann könnte ich JMP mal eine Test-Änderung zukommen lassen. Was recht einfach gehen könnte, solange man nicht die JTAG-Pins wegkonfiguriert hat :P

    OT: Ein Joystick-Port könnte als Programmierschnittstelle noch besser sein als der Userport, oder? Die Stecker sind leichter aufzutreiben und die Zahl der Pins reicht für JTAG.

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.

    Bitte melde dich an, um diesen Link zu sehen.

  • Soll ich mir alle ICs aus der Liste besorgen oder reicht der 175er?


    Ich würde mit dem 00 und 02 anfangen (mehrere Gatterlaufzeiten), dann 74 und zum Schluss die Register. LS hat Conrad in den Filialen eigentlich immer auf Lager, sonst nichts. Der 00 und 02 wären auch als ALS oder ACT interessant, aber die sind im Bastlerladen kaum zu kaufen.

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.

    Bitte melde dich an, um diesen Link zu sehen.

  • Diddl: Wo Du gerade hier bist: In *diesem* Moment wünsche ich mir allerdings einen PLD auf dem EF, dann könnte ich JMP mal eine Test-Änderung zukommen lassen. Was recht einfach gehen könnte, solange man nicht die JTAG-Pins wegkonfiguriert hat :P


    Wenn man Hardwareänderungen hat ist man mit einem CPLD natürlich etwas im Vorteil. Aber im Falle von JMP würde dir ein Jedec auch nix nützen, da mangelt es an Programmiergerät.

    Aber beim EF scheint es mir nicht nach konzeptionellen Fehler auszusehen. Eher glaube ich an etwas pingelige ports.


    OT: Ein Joystick-Port könnte als Programmierschnittstelle noch besser sein als der Userport, oder? Die Stecker sind leichter aufzutreiben und die Zahl der Pins reicht für JTAG.


    Wie meinst du das? Am EF? Programmierschnittstelle, du meinst für high level C debugging? Das wäre cool! Stelle ich mir aber ziemlich kompliziert vor bei einem 6502, vorallem wenn man so Spezialmodi debuggen muss wie /GAME /EXROM ...

    Bitte melde dich an, um diesen Link zu sehen. --- Bitte melde dich an, um diesen Link zu sehen. --- Bitte melde dich an, um diesen Link zu sehen.

  • Wie meinst du das? Am EF? Programmierschnittstelle, du meinst für high level C debugging? Das wäre cool! Stelle ich mir aber ziemlich kompliziert vor bei einem 6502, vorallem wenn man so Spezialmodi debuggen muss wie /GAME /EXROM ...


    Nö. ich meinte zum Programmieren eines CPLD über Joystickport mittels Bitbanging (JTAG). Es gibt da einige OpenSource-Projekte, die man vielleicht sogar ohne riesige Änderungen durch den cc65 schieben könnte. Für das potentielle High-Level-Debugging legt doch das Chameleon den Grundstein :)

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.

    Bitte melde dich an, um diesen Link zu sehen.

  • Ach so, was vergessen:

    Aber beim EF scheint es mir nicht nach konzeptionellen Fehler auszusehen. Eher glaube ich an etwas pingelige ports.


    Ja, ich vermute, dass es das Timing gegen Ende von Phi2 ist. Wir benutzen für den Schreibpuls jetzt ca. 250 ns in der hinteren Hälfte dieses Zyklus (Dotclock-Zyklus 3 und 4). Das hätte ich testweise mal auf 125 ns verkürzt (Nur Dotclock-zyklus 3). Ob ich mit der Vermutung richtig liege, *könnten* die LS-ICs zeigen. Ob man diese Modufikation auch testweise mal fädeln könnte, hab ich noch nicht durchdacht.

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.

    Bitte melde dich an, um diesen Link zu sehen.

  • Nö. ich meinte zum Programmieren eines CPLD über Joystickport mittels Bitbanging (JTAG). Es gibt da einige OpenSource-Projekte, die man vielleicht sogar ohne riesige Änderungen durch den cc65 schieben könnte. Für das potentielle High-Level-Debugging legt doch das Chameleon den Grundstein :)


    Ach so, - ein kleines Programmierkabel vom Joyport zum CPLD Jtag Stecker. Ja das wäre genial. Aber Joyports sind so Tastatur abhängig, Ich bin nach wie vor für den Userport.


    Ja, ich vermute, dass es das Timing gegen Ende von Phi2 ist. Wir benutzen für den Schreibpuls jetzt ca. 250 ns in der hinteren Hälfte dieses Zyklus (Dotclock-Zyklus 3 und 4). Das hätte ich testweise mal auf 125 ns verkürzt (Nur Dotclock-zyklus 3). Ob ich mit der Vermutung richtig liege, *könnten* die LS-ICs zeigen. Ob man diese Modufikation auch testweise mal fädeln könnte, hab ich noch nicht durchdacht.


    Der 8296 geht mit 8MHz auf den PLA damit der den Zyklus in verschiedene Phasen unterteilen kann. Das wäre natürlich die schönste Lösung ...


    Das Timing ist beim C64 echt ein Problem. Aber selbst beim VC-20 hatte ich in der Betaphase unglaubliche Probleme mit unterschiedlicher Hardware.

    Lösen konnte ich das Problem nur mit Tricks. Zb. habe ich die Chip select ganz am Ende der Gatterkette noch mit dem Phi2 verknüpfen müssen. Dazu habe ich extra ein Zwischen Node angelegt, damit es nicht weg optimiert wird. Die ursprüngliche Lösung hatte die Phi2 Verknüpfung früher drin. Dadurch ist das CS zu lange angestanden weil Gatterlaufzeiten eine Rolle gespielt haben (nicht bei jedem Gerät).

    Bitte melde dich an, um diesen Link zu sehen. --- Bitte melde dich an, um diesen Link zu sehen. --- Bitte melde dich an, um diesen Link zu sehen.

  • Aber Joyports sind so Tastatur abhängig


    Eben. Dann kannst Du mit etwas Geschick die JTAG-Kommandos mit der Leertaste morsen :)

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.

    Bitte melde dich an, um diesen Link zu sehen.

  • Wenn ich mal Speicher sparen muss, werde ich bestimmte Teile, die jetzt noch in C sind, auch nach Assembler portieren.


    sauhund spielt gerade mit einem Postpass-Grössenoptimierer für beliebige 6502-Programme.

    Zitat

    LS hat Conrad in den Filialen eigentlich immer auf Lager, sonst nichts.


    Ich hätte an der Stelle meiner Erfahrung nach eher HC statt LS geschrieben.

    10 x=rnd(-1963):fori=1to81:y=rnd(1):next
    20 forj=1to5:printchr$(rnd(1)*16+70);:next
    30 printint(rnd(1)*328)-217

    Bitte melde dich an, um diesen Link zu sehen. - Bitte melde dich an, um diesen Link zu sehen. - Bitte melde dich an, um diesen Link zu sehen.

  • Eben. Dann kannst Du mit etwas Geschick die JTAG-Kommandos mit der Leertaste morsen :)

    Wenn du das zuwege bringst, dann melde ich dich beim Tommy an (Wetten Dass) ... :lol27:

    Bitte melde dich an, um diesen Link zu sehen. --- Bitte melde dich an, um diesen Link zu sehen. --- Bitte melde dich an, um diesen Link zu sehen.

  • Gerade war der Postmann im Haus und hat mir einen neuen Aufkleber und eine neue rote LED gebracht!
    Danke Nils! :winke:
    znarF

    Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen.

  • so, ich habe erstmal af zwei verschiedenen c64c getestet. und ich muss sagen - ich bin begeistert :D

    hardwaredesign ist meines erachtens perfekt. das einzige was ich nicht dolle finde ist der der boot-schalter - ich nehme nicht an dass der mehr als 100 schaltvorgänge aushält bevor er bricht. evtl sollte der etwas größer sein - meinetwegen auch wesentlich größer - aber das ist kein zustand dass man jedesmal angst drum haben muss.

    die software - ich warte noch auf den easyloader :D aber easyprog ist gut ausgereift, einige unzulänglichkeiten werden ja im software thread bereits besprochen, mehr ist dazu nicht zu sagen. großartige arbeit.

    was mir persönlich noch fehlt, ist eine möglichkeit ohne neue massenspeichermedien größere images zu flashen - entweder über das rs232-interface (dauert wohl zu lange) oder GZIPped auf mehreren disketten, das wäre grandios. nichtsdestotrotz - ich konnte keinerlei fehlfunktion finden (das abgestürzte spiel schiebe ich jetzt einfach mal auf das CRT image) und bin absolut begeistert von dem modul.

    wie lange dauert der torture test eigentlich?? ich habe nach dem vollständigen beschreiben noch gefühlte 1000 loops abgewartet und dann aufgegeben :D

  • so, ich habe erstmal af zwei verschiedenen c64c getestet. und ich muss sagen - ich bin begeistert :D

    Magst Du uns auch noch sagen welche ASSY # das waren?


    das einzige was ich nicht dolle finde ist der der boot-schalter - ich nehme nicht an dass der mehr als 100 schaltvorgänge aushält bevor er bricht. evtl sollte der etwas größer sein - meinetwegen auch wesentlich größer - aber das ist kein zustand dass man jedesmal angst drum haben muss.

    Normalerweise benötigt man den Boot-Schalter nicht. Du kommst nach Reset und der C= Taste auch aus dem Modul raus und
    das Flashen funktioniert dann auch. Bei mir jedenfalls.


    wie lange dauert der torture test eigentlich?? ich habe nach dem vollständigen beschreiben noch gefühlte 1000 loops abgewartet und dann aufgegeben :D

    Der Test läuft ewig.

    skoe: kannst Du mal kurz erläutern was denn dieser Test eigentlich genau macht?

  • Danke für das Lob, damaltor. Das bessert die durch die Probleme bei Ersatz-PLAs etwas grtrübte Stimmung wieder auf :)

    Normalerweise benötigt man den Boot-Schalter nicht.


    Ebend. Gestern hat mich wieder jemand angesprochen, der lieber ganz auf den Schalter verzichten möchte und lieber einen Jumper hätte. Aber ich finde das öffnen des Gehäuses, z.B. nach einem abgebrochenen Flashen, zu schwierig.

    Der Schalter wurde hier im Thread schonmal angesprochen: Der hält mehr aus, als man ihm ansieht. Das einzige, was er nicht mag, wenn man ihn bösartig sehr oft hoch- und runterbiegt. Dann brechen die Beine ab. Aber Abhilfe dafür steht ja schon in der Aufbauanleitung.

    Das erinnert mich daran, dass nirgens für den Benutzer dokumentiert ist, was dieser Schalter eigentlich macht.

    skoe: kannst Du mal kurz erläutern was denn dieser Test eigentlich genau macht?


    Rumrödeln, natürlich.

    Erst wird ein Testmuster auf den gesamten Flash geschrieben. Dann wird in einer Endlosschleife das Testmuster, die richtige Bankauswahl und pro Durchlauf hunderte Male die Flash-ID geprüft. Zum Auslesen der Flash-ID muss auch in die Flashbausteine geschrieben werden, was aber keine Veränderung des Flash-Inhalts und damit keine "Alterung" des Flashs verursacht. Man kann den Test also so lange laufen lassen, wie man möchte. Aber vielleicht sollte ich mal anzeigen, dass der Test endlos ist. Nicht das wirklich mal jemand bis zum Ende wartet.

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.

    Bitte melde dich an, um diesen Link zu sehen.


  • Ebend. Gestern hat mich wieder jemand angesprochen, der lieber ganz auf den Schalter verzichten möchte und lieber einen Jumper hätte. Aber ich finde das öffnen des Gehäuses, z.B. nach einem abgebrochenen Flashen, zu schwierig.

    Es gibt auch abgewinkelte Stiftleisten, so daß man den Jumer auch nach hinten herausführen kann.

  • Es gibt auch abgewinkelte Stiftleisten, so daß man den Jumer auch nach hinten herausführen kann.


    Der Trick der Jumper soll ja gewesen sein, kein Loch machen zu müssen. Mit einem herausgeführtem Jumper hätte man Nachteile von Jumper und Schalter kombiniert :)

    (öffentliche PN an JMP$FCE2: Wg. der anderen Sache frage ich mal. Empfänger solltest aber Du sein, weil ich das nicht einsetzen kann.)

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.

    Bitte melde dich an, um diesen Link zu sehen.