ENGLISH VERSION |
|
Links | | | Forum | | | Kommentare | | | News melden |
Chat | | | Umfragen | | | Newsticker | | | Archiv |
amiga-news.de Forum > Programmierung > imsg zeug in C | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
1 -2- 3 | [ - Beitrag schreiben - ] |
19.08.2007, 18:16 Uhr Ralf27 Posts: 2779 Nutzer |
Zitat:Das ASM schneller ist als C war vielleicht noch zur 68000er Zeit richtig. Allerdings wird es schon beim 020er schwerer ASM mit der Hand zu optimieren. Der C-Compiler bekommt das schon besser hin. Also bekommt man heute mit C schnellere Programme hin als mit ASM, weil der Compiler besser optimieren kann. Bzw. könnte man das auch mit ASM machen, allerdings wäre das wirklich hochkomplex. Außerdem gibt es keine Fehlerkontrolle (z.b. bei Poke) bei MBasic. Steht glaub ich auch in der Doku. Z.b. dürfte dann z.b. Pokel 4,0 nie laufen. Könnte man eine Fehlerkontrolle z.b. bei Poke einbauen, dann hätte man sogar schon Speicherschutz. Zitat:Dann laufen die MB-Programme nicht mehr auf einem 6800er? Zitat:Es gibt halt Libs die auf FPU-Register beharren. Da ist dann nix mehr mit MB. Leider. Somit ist dann z.b. OpenGL für MaxonBasic immer unerreichbar. -- http://www.alternativercomputerclub.de.vu [ - Antworten - Zitieren - Direktlink - ] |
19.08.2007, 18:37 Uhr MaikG Posts: 5172 Nutzer |
>Außerdem gibt es keine Fehlerkontrolle (z.b. bei Poke) bei MBasic. Hab ja auch fast geschrieben. >Steht glaub ich auch in der Doku. Z.b. dürfte dann z.b. Pokel 4,0 nie laufen. Wieso sollte das nicht gehen? Du kannst eine 0 an position 4 schreiben. Fehlerkontrolle, nicht Speicherschutz... Währe aber auch möglich, sinnvoller ist es allerdings so zu proggen das man keinen mist baut. >Dann laufen die MB-Programme nicht mehr auf einem 6800er? Ja, führen zum Deathend. Versuchst du immernoch zum 000er kompatibel zu sein? [ - Antworten - Zitieren - Direktlink - ] |
19.08.2007, 18:48 Uhr Ralf27 Posts: 2779 Nutzer |
Zitat:Genau das ist das Problem. Dies dürfte nie funktionieren, gerade an dieser berühmten Adresse... Zitat: Hab eben kurz mal nachgesehn: Es gibt auch MBasic für OS1.3. Der Compiler ist aber wohl der gleiche. Also OS1.3 nur 020er aufwärts? Nun, ich schreib die Programme so das sie bei mir laufen und versuche dann auch diese so zu schreiben, das es noch auf möglichst unterschiedlichen Systemen läuft. -- http://www.alternativercomputerclub.de.vu [ - Antworten - Zitieren - Direktlink - ] |
19.08.2007, 18:54 Uhr MaikG Posts: 5172 Nutzer |
Du darfst bei einem 000 das nicht machen: POKEL 100003, &hFFFFFFFF damit schreibst du auf eine ungrade adresse, das ist eine 000/010 Limitation und unabhängig vom Compiler. [ - Antworten - Zitieren - Direktlink - ] |
19.08.2007, 22:09 Uhr NoImag Posts: 1050 Nutzer |
Zitat: Der gcc schluckt es so, wie ich es geschrieben habe. Aber kann sein, dass er C-Code als C++-Code interpretiert. Tschüß [ - Antworten - Zitieren - Direktlink - ] |
20.08.2007, 16:38 Uhr Holger Posts: 8116 Nutzer |
Zitat: Zitat:Hatten wir schon mal, das Thema. Variablen kann man an beliebigen Stellen im C Code deklarieren, wenn man sich auf den C99 Standard beruft. Der existiert, wie man leicht erkennen kann, seit acht Jahren und wird sowohl von gcc, als auch vbcc, zumindest was den Punkt der Variablendeklarationen (und z.B. dem //-Kommentar) angeht, umgesetzt. mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
20.08.2007, 16:47 Uhr Holger Posts: 8116 Nutzer |
Zitat:In der Theorie. Zitat:Nun ja. Assembler ist eine Möglichkeit Programme, die unter C zu langsam laufen, so zu optimieren, dass sie gar nicht mehr laufen. Wenn die C-Compiler wirklich so viel besser geworden wären, wäre das wirklich toll. Aber gerade im Amiga-Bereich findet wohl kaum ein solche Weiterentwicklung statt, schon seit langem nicht mehr. Es aber vielmehr so, dass CPUs immer mehr auf die Ausführung von 08/15 C-Programmen optimiert werden (weil nunmal der größte Teil der Anwendungen und vor allem auch Benchmarks in C geschrieben wird), so dass clevere Optimierungen auf Compiler- oder Assembler-Handarbeits- Seite ein immer schlechter werdendes Aufwand/Nutzen Verhältnis bekommen. mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
20.08.2007, 16:55 Uhr Holger Posts: 8116 Nutzer |
Zitat:Es generiert generell sehr interessanten Code, wie ich beim Debuggen feststellen durfte. So benutzt der durchschnittliche Programmierer normalerweise z.B. x<<5 statt x*32, weil die Integer Einheit der CPU das schneller verarbeiten kann. Wenn man aber im Code sieht, dass MBasic für ersteres (im Gegensatz zum zweiten Konstrukt) ein extra Unterprogramm aufruft, inkl. diversen Register-Verschiebe und -Sicherungs-Overhead, dann versteht man sehr schnell, warum ein C oder Assemblerprogramm um Welten schneller ist, wenn man ein normales, durchschnittlich optimiertes Programm heranzieht. Ein unnormales, nicht oder falsch optimiertes Programm mag dafür aber in MBasic die gleiche Performance wie in C hinlegen. Je nachdem. mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
20.08.2007, 18:05 Uhr Der_Wanderer Posts: 1229 Nutzer |
... oder Amiblitz3 benutzen, da ist der Code immer optimal ;-) Das ist womöglich der "aktuellste" 68K Compiler. Er enthält sogar Optimierungen für PPC und x86 JIT. -- Thilo Köhler, Author von: HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, TK AB3 Includes und viele mehr... Homepage: http://www.hd-rec.de [ - Antworten - Zitieren - Direktlink - ] |
20.08.2007, 21:24 Uhr Ralf27 Posts: 2779 Nutzer |
Zitat: Daher kommt vermutlich auch, das Shiften meistens langsamer(!) ist als eine Ganzzahldivision. Reines shiften ist etwas schneller, aber wenn man Klammern muß, dann wird es komplexer und langsamer. Eins der vielen Merkwürdigkeiten von MBasic. Das bekommt man aber erst mit, wenn man Speedtests macht. Ich finde es ja schade das man MBasic nicht irgendwie "patchen" kann, das es solche "Späße" nicht mehr macht (Vermutung). -- http://www.alternativercomputerclub.de.vu [ - Antworten - Zitieren - Direktlink - ] |
20.08.2007, 22:24 Uhr NoImag Posts: 1050 Nutzer |
@Ralf27: MBasic lässt sich mit Sicherheit entsprechend patchen. Es dürfte aber weniger Aufwand sein, gleich einen neuen Basic-Compiler zu schreiben. Tschüß [ - Antworten - Zitieren - Direktlink - ] |
20.08.2007, 22:37 Uhr Ralf27 Posts: 2779 Nutzer |
Zitat: Ich vermute aber mal das keiner einen neuen Basiccompiler schreiben würde, da es einmal recht viel arbeit ist und zum anderen eigentlich keiner mehr in Basic programmiert. Leider ist ja AmiBlitz komplett anderst als Basic, bzw. ist der Unterschied zwischen Basic und AmiBlitz ca. genau so groß wie zwischen Basic und C. Meine bescheidene Meinung. -- http://www.alternativercomputerclub.de.vu [ - Antworten - Zitieren - Direktlink - ] |
21.08.2007, 10:01 Uhr Holger Posts: 8116 Nutzer |
Zitat:Nunja, Aufwand/Nutzen Rechnungen muss man, wenn es um Amiga geht, wohl anders führen. Lassen wir mal weg... Ein einfacher Basic-Compiler wäre relativ einfach zu programmieren. Den würde aber niemand benutzen. Hier gibt es ja schon eine gewisse Minimum-Forderung, wie Library-und am besten Strukturenunterstützung, und dann soll das Ganze die offensichtlichen Schwächen von MBasic nicht haben. Ob das überhaupt konzeptionell unter einen Hut gebracht werden kann, ohne am Ende eben einen Basic-Dialekt zu haben, der sich signifikant von MBasic unterscheidet, weiß ich nicht. In dieser konzeptionellen Arbeit würde vermutlich auch der größte Aufwand drin stecken. mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
21.08.2007, 10:10 Uhr MaikG Posts: 5172 Nutzer |
>aber wenn man Klammern muß, dann wird es komplexer und langsamer. Unter Basic kannst du wenigstens komplexere sachen machen. Wenn du bei z.B. bei C- if anweisungen berechnungen mit rein machtst geht es nicht. Da brauchst du eine extra Variable. [ - Antworten - Zitieren - Direktlink - ] |
21.08.2007, 10:25 Uhr Holger Posts: 8116 Nutzer |
Zitat: Wie kommst Du denn auf den Quatsch? Selbstverständlich darf in C innerhalb von if(...) jeder beliebige Ausdruck stehen. Da braucht niemand eine extra Variable. Genaugenommen kannst Du da sogar deutlich mehr reinschreiben, als sinnvoll wäre. mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
21.08.2007, 12:38 Uhr Der_Wanderer Posts: 1229 Nutzer |
@Ralf Das stimmt einfach nicht. Amiblitz ist sehr änhlich zu anderen Basic Dialekten. Allerdings hat man ZUSÄTZLICH die Möglichkeit, etwas komplexer und strukturierter zu programieren, was dann eher in die Richtung C geht. Aber man MUSS das nicht. Es gibt auch inline 68K, x86 und PPC Assembler. Aber man MUSS es nicht benutzen. Man kann auch schön brav bei Standard Basic bleiben. Es gibt natürlich ein paar syntaktische Abweichungen, aber das gibts in jedem Basic Dialekt. Ich bin ja dabei, quasi ein neues Basic API zu schreiben, d.h. einen neuen Befehlssatz für Amiblitz, der Amiblitz mit EINFACHEN Befehlen dazu befähigt, aktuelle Dinge zu tun, wie 24bit Bilder, AHI sound oder TCP/IP, und zwar systemkonform. Eben das, was "alten" Basics fehlt, oder eben nur im "C Stil" hineinbauen lässt. -- Thilo Köhler, Author von: HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, TK AB3 Includes und viele mehr... Homepage: http://www.hd-rec.de [ - Antworten - Zitieren - Direktlink - ] |
21.08.2007, 13:17 Uhr DrNOP Posts: 4118 Nutzer |
Zitat:Ja, genau! Dann fang' mal hier an zu lesen, mach dort weiter und dann sag' nochmal, man könnte in C nicht viel zu viel Mist in eine Anweisung schreiben. Ich hab' mal einen beliebigen Abschnitt aus einem der Siegerbeiträge des "International Obfuscated C Code Contests" hier 'reinkopiert: C code:if(X(4)==w-1 , pr("n"),0 , pr("%*s", I(l+1), "")) ( (R(4)+1)%(w*l)==0 && l>1)&& pr("n"),0)) do( 1&~1, pr("Syntax: %s <x> <y> [<z>]n", b[0])||f(15) )((a&~1) ... Die Disziplin, die hier schon öfter angesprochen wurde verlangt C nicht - der Programmierer muß selbst darauf achten daß er sie einhält, damit was brauchbares rauskommt. -- Signaturen mit mehr als zwei Zeilen gehen mir auf den Wecker [ - Antworten - Zitieren - Direktlink - ] |
21.08.2007, 16:33 Uhr thomas Posts: 7718 Nutzer |
@DrNOP:Zitat: Du merkst aber schon, daß du dir in diesem Satz selbst widersprichst ? "Der Programmierer muß selbst darauf achten": das nennt man Disziplin. Und wenn der Compiler es nicht verlangt, kann er es nicht gleichzeitig fordern. Das ist ein Widerspruch in sich. Gruß Thomas -- Email: thomas-rapp@web.de Home: thomasrapp.homepage.t-online.de/ [ - Antworten - Zitieren - Direktlink - ] |
21.08.2007, 17:17 Uhr DrNOP Posts: 4118 Nutzer |
@thomas: Ich denke eher, du interpretierst den Begriff "Disziplin" anders. Habe ich geschrieben, daß der Compiler vom Programmierer Disziplin verlangt? Wo widerspreche ich mir? Die Frage ist nicht ob Disziplin nötig ist, sondern wer sie für nötig hält. Und das ist ganz sicher nicht der Compiler (bzw. der nur in syntaktischer Hinsicht), geschweige denn das Design der Sprache C. Um lesbaren, wartbaren, funktionierenden Code ohne "Schweinereien" zu bekommen ist ganz allein der vor dem Computer Sitzende verantwortlich, sonst niemand. Sonst könnte es einen solchen Wettbewerb wie den Obfuscated C Code Contest überhaupt nicht geben. Versuch mal, einen solchen Wettbewerb für Oberon oder Modula zu veranstalten ... -- Signaturen mit mehr als zwei Zeilen gehen mir auf den Wecker [ - Antworten - Zitieren - Direktlink - ] |
21.08.2007, 18:04 Uhr whose Posts: 2156 Nutzer |
@DrNOP: Ich denke, Du hast eine falsche Vorstellung von "Disziplin" und "Zwang". Disziplin ist etwas, was das Individdum selbst aufbringen muß. Man kann das Individuum durch Vorschriften drauf "trainieren", einer gewissen Disziplin zu gehorchen, aber das erbringt nicht zwingend einen Erfolg. Auf Programmiersprachen angewandt sehe ich die Situation wie folgt: Bei C ist das Individuum gehalten, Disziplin zu wahren, was durch gewisse "Vorschriften" wie Compiler-Fehler oder -Warnungen trainiert werden kann (aber nicht muss). Sprachen mit extrem strenger Typ-Prüfung und ähnlichen Restriktionen kann man wohl mehr unter der Kategorie "Zwang" einordnen, da sie ein Abweichen von der "gewünschten Disziplin" erst gar nicht zulassen. Das zeigt sich u.A. in Wettberwerben wie "Obfuscated C", welche mit anderen Programmiersprachen nur schwer oder gar nicht möglich sind. Davon mal abgesehen, "obfuscated C" erfordert (ganz im Gegensatz zur "allgemeinen" Sicht) meiner Meinung nach sogar noch weit mehr Disziplin als "Programmieren nach Vorschrift", denn laufen sollen die dort eingereichten Programme trotz ihrer "Verwirrung" ja trotzdem auf so vielen Plattformen wie möglich. Das erfordert schon eine Menge Hirnschmalz und der Compiler sowie die Richtlinien für portable Programmierung helfen einem dabei auch nicht mehr wirklich. Auf den Ersteller dieses Threads angewandt würde ich sagen, daß ihm ein klein wenig Lerndisziplin in Sachen C nicht schaden könnte, wozu meiner Meinung nach vor allem die Annahme "fremden" Wissens wider der eigenen Natur gehört. Irgendwie ist das Ganze aber wieder einmal ziemlich OT geworden, oder? Grüße -- --- µA1 PPC 750GX-800 A4000 PPC 604e-233 [ - Antworten - Zitieren - Direktlink - ] |
21.08.2007, 18:09 Uhr MaikG Posts: 5172 Nutzer |
>Wie kommst Du denn auf den Quatsch? ich hatte glaube ich sowas: code:if (a+1>b) { } da hat der compiler sich beschwert. dann hab ich das so gemacht: code:tmp=a+1 if tmp>b) { } und es ging. [ - Antworten - Zitieren - Direktlink - ] |
21.08.2007, 18:58 Uhr thomas Posts: 7718 Nutzer |
@MaikG: Vermutlich hast du wieder Äpfel mit Birnen, sprich: Pointer mit Zahlen verglichen. Der Wortlaut der Fehlermeldung wäre interessant. Oder war's vielleicht sowas: code:ULONG a; ... if (a+1 > 0) ... Vielleicht wollte der Compiler dich darauf hinweisen, daß diese Bedingung immer erfüllt ist. Ich glaube der GCC ist so intelligent und merkt das. Eine vorzeichenlose Zahl ist immer größer oder gleich 0. Und wenn du noch eins draufaddierst, ist es immer größer als 0. Du solltest dir die Fehlermeldungen und Warnungen aufmerksam durchlesen, da kann man manchmal etwas lernen. Gruß Thomas -- Email: thomas-rapp@web.de Home: thomasrapp.homepage.t-online.de/ [ - Antworten - Zitieren - Direktlink - ] |
21.08.2007, 19:44 Uhr DrNOP Posts: 4118 Nutzer |
Zitat:Besser wär's aber, wie du selbst schreibst, wenn das Individuum selbst drauf kommt, daß es sein Programm auch in zwei Jahren noch lesen können will und deshalb sich an gewisse Regeln hält, ohne Zwang. Der Compiler zwingt dich nur, an den vereinbarten Syntax zu halten. Du kannst aber auch wunderbar syntaktisch korrekten Blödsinn programmieren. C code:ist in den allermeisten Fällen kompletter Blödsinn, aber es wird übersetzt und ausgeführt ohne Probleme. Das einzige was der Compiler macht ist dir eine Warnung ausspucken, daß du doch vielleicht eine Klammer um die Zuweisung setzen sollst falls du sie als Vergleichswert einsetzen willst. Und dann hast du einen da sitzen, der entweder die Compilerausgaben ignoriert oder nicht versteht ...if (a = 0) { ... } -- Signaturen mit mehr als zwei Zeilen gehen mir auf den Wecker [ - Antworten - Zitieren - Direktlink - ] |
21.08.2007, 23:45 Uhr Ralf27 Posts: 2779 Nutzer |
Zitat: Ähm, wo bitte ist AmiBlitz sehr ähnlich zu anderen Basicdialekten?!? Das ist ungefähr so als wenn man C mit Basic vergleichen würde, bzw. sagen würde es war ähnlich, ist es aber nicht. Ich geb dir mal ein Beispiel: Ich hab in AmigaBasic begonnen und hab damals mal QBasic auf dem PC gesehn das 99% genau so aussieht. Ich konnte sofort(!) ohne weiteres darauf programmieren. Logischerweise sind Befehle wie z.b. Screen etwas anderest (einfacher) aufgebaut, was aber klar ist. Dann ist MBasic gekommen das 99,9% so aussieht wie AmigaBasic. Ich könnte jetzt fast weitermachen mit z.b. ACE, das ich kurz mal angetestet habe und auch gleich kleine testprogramme schreiben konnte... Also, wer eine der Sprachen kann, kann die anderen auch. AmiBlitz würde da ganz und gar nicht rein passen. Ich vermute mal das es einfach ist, wenn man es kann. Aber das reinkommen ist nicht so einfach. Du schreibst ja selbst das es komplex sein kann. Nichts desto trotz verfolge ich natürlich auch die AmiBlitzgeschichte mit und hab mir auch mal die neueste Beta angesehn, die verständlicherweise noch nicht ganz stabil ist. Ich versteh von dem Quellcode aber weniger als von einem C-Quellcode und das tippe ich als Basic-Programmierer ... -- http://www.alternativercomputerclub.de.vu [ - Antworten - Zitieren - Direktlink - ] |
22.08.2007, 11:09 Uhr Holger Posts: 8116 Nutzer |
Zitat:Jein. Es gibt sogar spezielle Rubriken ala "Programme, die nur mit Compiler xyz rev a.b.c_d (und nichts anderem) laufen" Abgesehen davon hat mit Sicherheit jeder Teilnehmer schon sein eigenes Toolset, das gewisse Standard-Transformation durchführt, um aus einem normalen C-Programm (das läuft) ein obfusziertes Programm der ersten Stufe zu erzeugen, das dann von Hand weiter bearbeitet wird (und hin und wieder zur Schaffung neuer Tools für den nächsten Wettbewerb führt). So ala C code:Das kann man automatisieren.if(a??(i??)??!??-b) ??< printf("bla??/n"); ??> Zitat: Yep. mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
22.08.2007, 11:18 Uhr Holger Posts: 8116 Nutzer |
Zitat: Du kannst auch schreiben: C code:if(a>5,a<10) { ... } und wenn ich diesen Code sehen würde, wüsste ich sofort, was der Autor offensichtlich gemeint hat. Aber der Compiler wird etwas anderes produzieren. Viel besser finde ich es aber, dass C es erlaubt, solchen Code hinzuschreiben C code:ohne, dass es eine zwingende Spezifikation gibt, was für ein Code denn nun generiert wird. So kann man locker leicht Code schreiben, der nicht nur bezüglich der Plattformen nicht portabel, sondern sogar zwischen verschiedenen Compilern (oder Versionen/Revisionen des gleichen Compilers) derselben Plattform nicht portiert werden kann.foo(bar++, bar++, bar++); mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
22.08.2007, 12:35 Uhr Der_Wanderer Posts: 1229 Nutzer |
@Ralf Du musst differenzieren zwischen der API (also Befehlen, die irgendwas machen, z.B. AmigaOS API) und dem Konzept der Sprache. Ich gehe davon aus, dass man als Programmierer in der Lage ist, sich mittels Referenzhandbuch eine neue API on-the-fly anzueigenen. Sonst könnte man niemals behaupten, z.B. C zu können. Denn es gibt sicher noch irgendeine API, die man nicht kennt. Z.B. weiss ich nicht, wie man unter Palm OS den Audio Treiber anspricht. Trotzdem behaupte ich, ich kann C. Was heisst das jetzt für Amiblitz ? Die API mag anders sein, auch kann hier und da eine geschweifte Klammer stehen statt einer runden, aber das Prinzip ist Basic. Also z.B. dass man Resource Tracking hat und Objekte nicht freigeben muss, oder dass man (im Normalfall) keine Pointer benutzen muss, oder dass man ObjectID basierend programmiert statt mit Pointern, oder dass es eine einfache Handhabung von String Varialben gibt etc. Amiblitz erlaubt es nur ZUSÄTZLICH, auch im C Style zu programmieren. Aber das musst DU ja nicht tun, das kannst du ja einfach ignorieren, dann ist es eine einfache Sprache, und wenn du sie beherrscht, kannst du komplexere Dinge tun, wo bei anderen Basic Dialekten eben Schluss ist. Poste doch mal ein paar Zeilen in Maxon Basic oder AmigaBasic, dann übersetze ich das in Amiblitz, und wir werden sehen wie unterschiedlich das tatsächlich ist. Würde mich jetzt tatsächlich interssieren, das ist keine Polemik oder Sch***zvergleich. -- Thilo Köhler, Author von: HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, TK AB3 Includes und viele mehr... Homepage: http://www.hd-rec.de [ - Antworten - Zitieren - Direktlink - ] |
08.09.2007, 19:13 Uhr Ralf27 Posts: 2779 Nutzer |
Ich bezweifle ja nicht das AmiBlitz mächtiger ist als AmigaBasic oder MaxonBasic. Alles andere hätte mich jetzt ja auch verwundert. Es ist auch wesentlich schneller als MaxonBasic, das hab ich selbst an einem Programm gesehn das ich mal soweit ich es hinbekommen habe von MaxonBasic nach BlitzBasic(!) konvertiert habe. Was ich eigentlich tippen möchte: Die Sprache AmigaBasic, MaxonBasic, QBasic (mehr fallen mir gerade nicht ein und bei diesen Sprachen bin ich mir sicher) sind derartig gleich, das man bis auf ein paar kleine Ausnahmen (z.b. Screenbefehl bei QBasic zu Basic auf dem Amiga) direkt gleich Programm schreiben kann und diese laufen dann auch. Der Unterschied zwischen diesem Basic und AmiBlitz ist schon recht groß. Mir ist schon klar das ich mit MaxonBasic quasi seit dem Kauf von MaxonBasic auf dem Abstellgleis steh. Daran beist die Maus keinen Faden ab. Und das MaxonBasic recht langsam ist, das ist mir auch klar. Ich hab jetzt auch die Wahl zwischen AmiBlitz und C. Beides hat Vor- und Nachteile. Ich finde es z.b. recht gut das AmitBlitz in der neuen Version jetzt auch auf meinem Rechner läuft (wenn auch nicht lange). Ich hab da noch recht große Probleme, aber es ist ja noch Beta. Außerdem hab ich mich noch nicht intensiv damit beschäftigt. Aber mal eine kleine Frage zu AmiBlitz: Welcher Code wird da eigentlich generiert? Ich hab da noch keine Einsteller dafür gefunden. Und ob ich reinen 68000er oder 060er Code generiere ist ja schon ein recht großer Unterschied. Das ist mir bei einem C-Testprogramm aufgefallen, das mit 060er-Option abging wie sonst was. Nochmal kurz zu dem Programmcode der von AmiBlitz gespeichert wird: Irgendwie kann man denn ja nicht so richtig mit einem externen Texteditor ansehn. Sind da auch noch Steuerzeichen drin? -- http://www.alternativercomputerclub.de.vu [ - Antworten - Zitieren - Direktlink - ] |
09.09.2007, 10:09 Uhr MaikG Posts: 5172 Nutzer |
bzl. der Amiblitz geschwindigkeit, wurde AmiHuhn nicht mit diesem Compiler geschrieben ;-) [ - Antworten - Zitieren - Direktlink - ] |
09.09.2007, 13:20 Uhr Der_Wanderer Posts: 1229 Nutzer |
Die Codegenerierung setzt man in Amiblitz mittels Compilerdirective "Optimize x". In Zukunft wird das aber auch wohl von dem IDE unterstützt, das es erlaubt das in der GUI zu setzen. -- Thilo Köhler, Author von: HD-Rec, Sweeper, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, AudioConverter, ScreenCam, PerlinFX, MapEdit, TK AB3 Includes und viele mehr... Homepage: http://www.hd-rec.de [ - Antworten - Zitieren - Direktlink - ] |
1 -2- 3 | [ - Beitrag schreiben - ] |
amiga-news.de Forum > Programmierung > imsg zeug in C | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
Impressum |
Datenschutzerklärung |
Netiquette |
Werbung |
Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten. |