Ich hatte zwar gerade noch ein paar byte eingespart, aber ich drehe falsch herum... nun muss ich das erstmal korrigieren bevor ich noch optimiere.
Hallo Besucher, der Thread wurde 60k mal aufgerufen und enthält 482 Antworten
letzter Beitrag von Haubitze am
Neue C64 ASM/Basic Compo : Dreh' das Sprite.
- peiselulli
- Erledigt
-
-
Super! Weiter so! Nur leider: letzter Stand: 53 Bytes. Aber die restlichen Bytes schaffst Du auch noch.
Danke für den Ansporn, aber ich fürchte, Deine 53 Bytes werde ich nicht knacken - das muss schon Roland oder jemand anderes machen. Wäre es denn sooo schlimm, wenn Du die Compo gewinnen würdest?
Ich bin schon sehr gespannt auf Deine 53 Byte Lösung - sowie auch auf die der anderen Teilnehmer. Bei der Kompressions-Compo waren die verschiedenen Lösungen ja auch unheimlich lehrreich. -
zu früh gefreut, bitte löschen
-
Mit anderen Worten für 1) und 2) -> ja
Na denn: 58 Bytes, MD5 c412ffa65f135607368a5c1e02c5a695
-
Ich denke da so an $39/$3a
Sowas verrät man doch hier nicht...
Das hatte ich auch als eines der ersten Sachen eingebaut und dürfte wohl verlässlich sein (warum auch nicht).
-
so okay konnte doch keine weiteren byte sparen, jetzt ist aber wirklich schluss. lade trozdem nochmal hoch weil ich
denke die letze version hatte noch jsr's drin.
program kommt ohne illegals aus und ist relocable. wenn man orginal und target aendern moechte kann man das per pokes tun.
bsp: (wenn ich das richtig rechne (ansonsten +/- 1)Code- poke start+6+(12 bytes basicstart),hig_orginal
- poke start+48+(12 bytes basicstart),low_orginal
- poke start+50+(12 bytesbasicstart),low_orginal+24
- poke start+52+(12 bytesbasicstart),low_orginal+48
- poke start+10+(12 bytesbasicstart),hig_helper
- poke start+53+(12 bytesbasicstart),low_helper+60
- poke start+54+(12 bytesbasicstart),low_helper+61
- poke start+55+(12 bytesbasicstart),low_helper+62
(getestet nur unter der regel das orginaladdr<rotatedaddr<helperaddr) dabei sind das alles spriteblocks.
mehr geht beim besten willen nich, ich merk aber schon das ich noch sehr viel zu lernen hab.
gerade diese asm-compo hatt mir mal wieder gezeigt das ich gerade mei meinen aktuellen project
O-Pat-Ko-No noch so mache bytes haette sparen koennen wenn ich kreuzundquer hochundrunter denken koennte.nichts desto troz mein progaemchen.
edit: einzigster trostpreis wird wohl bleiben das ich nich der langsamste bin. oder doch
-
Hier ist noch meine Basic Version aus 2011, die ist aber weder kurz, schön, schnell noch Regelkonform
Sprite drehen -
55 Bytes, MD5 761b40058cc6ee622db7fd2033f952a7
-
55 Bytes, MD5 761b40058cc6ee622db7fd2033f952a7
Welche Zweck hat das MD5 dahinter?
-
Welche Zweck hat das MD5 dahinter?
Vermutlich, um die eingesandte Datei eindeutig zu identifizieren, da er ja mehrere Lösungen eingesendet hat.
-
Vermutlich, um die eingesandte Datei eindeutig zu identifizieren, da er ja mehrere Lösungeningesendet hat.
Und ein Nachweis dass er die Lösung auch wirklich schon dann hatte.
(sonst könnte ich ja am 1. tag behaupten es in 40 bytes geschafft zu haben, das aber erst am ende wirklich tun.) -
Auch wenn jetzt jemand seine genialen Tricks postet und man genau all das evtl. schon selbst verbaut hatte
Wenn man VIEL Zeit hat kann man damit auch recht sicher das binary rekonstruieren - wenn das Universum alt genug wird.
Sobald jemand 10 Byte Loesungen angibt mit MD5 wuerde ich es aber versuchen wollen, hehe.
Ich selbst komme derweil nicht dazu das nochmal gescheiter anzugehen aber es ist ja noch Zeit : ) -
(sonst könnte ich ja am 1. tag behaupten es in 40 bytes geschafft zu haben, das aber erst am ende wirklich tun.)
Ach so, ich dachte, er hätte dem PL schon seine Lösungen geschickt, deshalb die MD5 zum Markieren.
Ob man die beste Lösung am ersten oder letzten Tag proggt und rechtzeitig abgibt, spielt doch eh keinen Ruggell.OK...höchstens wenn zwei Teilnehmer mit der kürzesten Version gleichzeitig die gleiche Anzahl Bytes hätte, dann hätte eigentlich der, der sein Programm als erstes abgegeben hätte, eigentlich gewonnen.
Das steht aber so nicht in den Regeln, also wären es dann doch zwei Gewinner gleichzeitig. -
Welche Zweck hat das MD5 dahinter?
Vermutlich, um die eingesandte Datei eindeutig zu identifizieren, da er ja mehrere Lösungen eingesendet hat.
"Eingesendet" habe ich noch gar nichts, dafür ist ja noch Zeit...
Auch wenn jetzt jemand seine genialen Tricks postet und man genau all das evtl. schon selbst verbaut hatte
Genau. Durch das Posten der Prüfsumme kann man im Nachhinein beweisen, dass man zu einem bestimmten Zeitpunkt eine bestimmte Lösung bereits hatte. Bei Aufgaben wie dieser ist es ja nicht unwahrscheinlich, dass verschiedene Teilnehmer ähnliche oder funktional identische Lösungen einreichen. Wenn jetzt jemand eine Lösung im Thread veröffentlicht, könnte das Leute davon abhalten, eigene Lösungen einzureichen, weil sie nicht als Plagiatoren dastehen wollen. Durch die Prüfsumme kann dieser Verdacht entkräftet werden.
-
Genau. Durch das Posten der Prüfsumme kann man im Nachhinein beweisen, dass man zu einem bestimmten Zeitpunkt eine bestimmte Lösung bereits hatte. Bei Aufgaben wie dieser ist es ja nicht unwahrscheinlich, dass verschiedene Teilnehmer ähnliche oder funktional identische Lösungen einreichen. Wenn jetzt jemand eine Lösung im Thread veröffentlicht, könnte das Leute davon abhalten, eigene Lösungen einzureichen, weil sie nicht als Pagiatoren dastehen wollten. Durch die Prüfsumme kann dieser Verdacht entkräftet werden.
Interessant. Wieder mal was gelernt. Vor allem die Motivationsbremse beim Veröffentlichen finde ich thoughtful.
Thanx. .thumbsup: -
Angabe von erreichten Bytes können natürlich auch dazu führen, dass irgendwelche Leute erst gar nicht teilnehmen/abgeben.
-
Ja, daher zoegerte ich ja auch. Andererseits erreicht man so eher das absolute Optimum.
Wer sich fuer den/einen Sieger haelt, macht ja nicht mehr oder zumindest weniger intensiv weiter.
Edit:
Hast Du die Version in meiner neuen PN getestet? -
Jetzt ja, ich kann nicht immer in Echtzeit
-
Ich dachte parallel
Es kann ja nie Schaden, den Teilnehmerkreis zu erweitern und ich machte Thomas Jentzsch (man kennt ihn vielleicht aus dem Atari 2600 Bereich)
auf die Compo aufmerksam.
Da ich jetzt eine extrem gute Variante kenne, bin ich selbst auch raus - es sei denn ich finde einen gaenzlich anderen AnsatzSeine Version
Md5 9bbc0370d177f354a3449b179831453a -
Angabe von erreichten Bytes können natürlich auch dazu führen, dass irgendwelche Leute erst gar nicht teilnehmen/abgeben.
Ich finde das Rausposaunen von Programmlängen sehr nervig und für diejenigen, die bei vielleicht 80 Bytes noch an ihrer optimalen Lösung rumbrüten, nicht gerade motivierend.Am besten wäre meiner Meinung nach, man hätte stillschweigend seinen Entwurf eingesandt (von mir aus auch mehrmals), um dann nach der Veröffentlichung (Bekanntgabe des Gewinners) zu sehen, wo man steht. So wie im richtigen Leben halt auch...
Ja, daher zoegerte ich ja auch. Andererseits erreicht man so eher das absolute Optimum.
Wer sich fuer den/einen Sieger haelt, macht ja nicht mehr oder zumindest weniger intensiv weiter.
Das Optimum finden war doch gar nicht die Aufgabe.Hier findet gerade eine Umwandlung statt, welche aus einem Wettbewerb einen iterativen Optimierungsprozess macht!
Gruß,
Thomas