Bei CIRCLE scheind es ja zu funzen.
Vieleicht sollte ein ASM Crack sich mal die Implementierung ansehen.
Ich vermute ja einen Bug in SIN COS.
Nur gut das Please login to see this link. das Rad neu erfinden wollte, sonst wär es nie aufgefallen.
There are 9,421 replies in this Thread which has previously been viewed 1,057,772 times. The latest Post (
Bei CIRCLE scheind es ja zu funzen.
Vieleicht sollte ein ASM Crack sich mal die Implementierung ansehen.
Ich vermute ja einen Bug in SIN COS.
Nur gut das Please login to see this link. das Rad neu erfinden wollte, sonst wär es nie aufgefallen.
Neu erfinden ?? Nö, aber wenn man den Kreis nicht zeichnen will sondern nur bestimmt Punkte davon berechnen will kommt man mit CIRCLE nicht all zu weit ![]()
Ich vermute ja einen Bug in SIN COS.
Ich hatte den Bug Please login to see this link. drin und habe ihn gut fixen können.
Den Fix habe ich auch bei Github eingestellt, damit er ins MEGA65-ROM kann:
Please login to see this link.
So, jetzt kann man hoffentlich bedenkenlos Kreise zeichnen. ![]()
So, jetzt kann man hoffentlich bedenkenlos Kreise zeichnen.
...sagte Archimedes...
Arndt ![]()
(oder so ähnlich)
Display MoreIch vermute ja einen Bug in SIN COS.
Ich hatte den Bug Please login to see this link. drin und habe ihn gut fixen können.
Den Fix habe ich auch bei Github eingestellt, damit er ins MEGA65-ROM kann:
Please login to see this link.
So, jetzt kann man hoffentlich bedenkenlos Kreise zeichnen.
Danke Snoopy !!!
Ich habe die Informationen an dddaaannn weitergeleitet und dein Bugfix wird wohl noch direkt in das nächste große Update mit eingepflegt !
So, jetzt kann man hoffentlich bedenkenlos Kreise zeichnen.
Nein, kann man immer noch nicht. ![]()
Wie Please login to see this link. freundlicherweise gemeldet, zickt der SIN im Negativen rum:
Please login to see this attachment.
Jetzt muss man da mal wohl tiefgreifender ran! ![]()
![]()
![]()
![]()
Paar richtige Kreise sollte der MEGA65 doch irgendwann wieder hinbekommen, der C65 konnte es ja auch! ![]()
Und das Blöde: S-BASIC 65 ist auch davon betroffen! ![]()
Ich melde mich wieder, wenn ich da was rausgefunden habe. ![]()
Paar richtige Kreise sollte der MEGA65 doch irgendwann wieder hinbekommen, der C65 konnte es ja auch!
Nein, konnte er leider nicht, deswegen ist Bit Shifter glaube ich damals daran. Der Kreis war kein Kreis....
Paar richtige Kreise sollte der MEGA65 doch irgendwann wieder hinbekommen, der C65 konnte es ja auch!
Nein, konnte er leider nicht, deswegen ist Bit Shifter glaube ich damals daran. Der Kreis war kein Kreis....
Das Kreiszeichnen war da meines Wissens das Problem. SIN und COS hat er aber wie der C128 fehlerfrei hinbekommen. Ist aber schon länger her ...
Ich habe mal SIN auf C128, C65 und MEGA65 näher ausprobiert:
C128:
Please login to see this attachment.
C65:
Please login to see this attachment.
MEGA65:
Please login to see this attachment.
Also im dem geprüften Bereich von -90 bis +90 Grad sind der C128 und C65 exakt gleich und beim MEGA65 ergeben sich nur in der 9. Nachkommastelle eventuelle kleine Abweichungen.
Ich habe das mal in der angehängten Tabelle zusammengefasst. Die Bereiche sind fehlerfrei! ![]()
Im Bereich von -360 bis -180 Grad ist der SIN des MEGA65 dann eindeutig verkackt! ![]()
Please login to see this attachment.
Siehe anhängende Tabelle (C65 - MEGA65 - Vergleichswerte)
Der ausfallend werdende negative Quadrant beim SIN! ![]()
Please login to see this attachment.
Ich war heute an der SIN-Routine dran und werde dann morgen weitermachen. ![]()
Zur Sicherheit werden alle Ergebnisse sorgfältig mit dem Please login to see this link. überprüft! Nichts bleibt dem Zufall überlassen! ![]()
Please login to see this attachment.
I agree with alochmann's comment on the Github issue: SIN and COS are affected by a change that was made to the definition of INT: Please login to see this link. It's not clear if the change to INT was intentional, but the side effects are a problem, and we intend to change it back to match Commodore's definition. I'll try to get to this next week and confirm whether it repairs SIN and COS.
Hm, letzter Mega65 Eintrag im blog war 18. August 24...seither leider nur Megaphone
...5 Monate nix zum Mega65, hoffe es geht bald weiter ![]()
Hm, letzter Mega65 Eintrag im blog war 18. August 24...seither leider nur Megaphone
...5 Monate nix zum Mega65, hoffe es geht bald weiter
Aehhh, was soll denn bitte "Weitergehen" ? Das nächste große Core und ROM-Update steht kurz bevor, der MEGA65 funktioniert in Revision 6 so wie wir uns das gewünscht haben, also was meinst du Bitte ?
Die Leute haben Spaß an ihrem Rechner und so soll es sein.
Oder meinst du das Expansion board ?
Das haben wir bereits mehrfach gesagt, das liegt bei uns in der Priorität seeehr weit hinten, da es zwar ein nettes Add-On ist aber für die eigentliche Funktion des MEGA65 nicht zwingend benötigt wird.
Ich habe die gleiche Frage eben schon im Discord beantwortet:
- Datasettte wird meist nur von Nostalgikern benutzt, in real ist sie viel zu lahm
- Userport der MEGA65 kommt mit Ethernetport und unterstützt TeensyROM, beides schnelle Wege um ins Internet zu kommen und als Printerschnittstelle, auch da bringt z.B. die U1541II(+) modernere Wege um einen Druck direkt als PDF auf die SD Karrte abzulegen.
Und zu guter Letzt: Paul freut sich immer über Freiwillige die mithelfen, alles ist Open-Source. Feel free !
letzter Mega65 Eintrag im blog war 18. August 24
"Weitergehen"
Ich vermute, das "Weitergehen" war auf neue Blog-Posts bezogen ...
Das ist der Blog von Paul. Er ist im Moment sehr beschäftigt.
Wer das Projekt verfolgt, weis, das @dddaaannn's monatlicher Blogpost eigentlich immer die neuesten Updates beinhaltet.
I agree with alochmann's comment on the Github issue: SIN and COS are affected by a change that was made to the definition of INT: Please login to see this link.
Davon gehe ich auch aus. Ich habe die SIN-Routinen vom aktuellen MEGA65 und vom C65 verglichen und die sind gleich. Dass hier unterschiedliche Werte für SIN rauskommen, muss fast zwangsläufig an der INT-Routine liegen, die hier aufgerufen wird.
Zum Beispiel INT(-1.01) und INT(-1.99) sind beim MEGA65 aktuell -1, bei allen anderen 8 Bit-Systemen, die ich ausgetestet habe, kommt jeweils -2 als Ergebnis. INT entspricht hier immer einem Please login to see this link., beim MEGA65 wird das aktuell bei negativen Zahlen anders gehandhabt ("in Richtung der 0 gerundet"). Und das kann nicht gutgehen, wenn der Rest der SIN-Routine gleich geblieben ist.
Also mal ans INT ran oder ausnutzen, dass sin(-x)=-sin(x) ist und man die negativen Argumente auch durch die positiven ausrechnen lassen kann. ![]()
(Sorry the January issue is a few days late! I've been distracted.
)