Ein wenig "Zeit habe ich berichtet, eine Version des Commodore 64-Emulator in Adobe ActionScript 3.0 geschrieben, jetzt in einer neuen Version :
Artikel Tagged 'Commodore-64'
Commodore 64 Emulator JavaScript
Undolog: Arbeitsplätze zwischen Vergangenheit und Gegenwart
Neulich stieß ich auf ein paar alte Fotos mit meinem ersten Computer! So fiel es mir zu meiner jetzigen Position fotografieren und vergleichen ihn mit dem "Zeit" ist vorbei. Die Bilder gefunden wurden offensichtlich von schlechter Qualität, im Vergleich zu den aktuellen, ein weiteres Zeichen der Zeit!
Grüße Professor Falken
Ich habe eine Tradition, dass ich weitermachen seit 25 Jahren! Das gerne feiern! Seit diesem Tag, 1983, dem Jahr seiner Veröffentlichung, muss ich einmal im Jahr durch die Beobachtung WarGames (War Games), hat der Film, dass irgendwie der Arbeit mein Schicksal entschieden.
Kriegsspiele , in seiner "aktuellen" Einfachheit, zu der Zeit war ein echter Erfolg, vor allem bei Computer-Enthusiasten.
Das arithmetische Modul
Das "Modul" ist eine der aritmentiche auf fast allen Programmiersprachen (Ich habe es das erste Mal mit dem Grundgesetz Commodore 64) . Kann als einfache Bedienerführung angezeigt, wie im Fall von ActionScript-oder JavaScript, die beide den Charakter "Prozent" (% b), oder als eine Methode oder eine Anweisung. Für Entwickler kann nützlich sein, in Zusammenhängen offenbar anders. Gskinner sprach kürzlich, zeigt einige Klassiker, aber interessante Beispiele.
Einfach ausgedrückt, gibt die Operation zwei Zahlen bilden den Rest ihrer Division. Der Vollständigkeit halber sagen wir, dass der Betrieb des Moduls ein sehr umfangreiches Thema, das ich in diskutiert wird die RSA-Verschlüsselung ! Dieses Mal jedoch nicht von Codes oder Verschlüsselungen zu sprechen, aber nützliche Dinge viel einfacher.
Teilbar durch den Wechsel ...
Der erste Einsatz wir den Betrieb des Moduls machen können, ist zu prüfen, ob eine Zahl teilbar durch eine Zahl b! Wenn die risultatto von a% b (% I wird hier die Notation, um den Betrieb des Moduls angeben) Null ist, ist ein Vielfaches von b. Ich erinnere mich, als ich mit einem Problem zu tun, wie ich nicht wusste, den Betrieb des Moduls hatte. Auf dem Commodore 64 musste ich wissen, ob eine Zahl wurde durch 2 teilbar. Zu der Zeit habe ich diese Syntax (ich fand den Code origionale - Jahr 1983):
1 2 3 | 10 INPUT A 12 B = A / 2: IF B = INT (B) THEN PRINT "OK DIE ZAHL" A "UND" EQUAL ": GOTO 10 14 Drucken "die Zahl" A "UND" ODD ": GOTO 10 |
Die BASIC des Commodore 64, jedoch nicht über die Operation Modul - zumindest erinnere ich mich!
Grundsätzlich genau das, was ich tat, das von seiner Natur macht die Bedienung des Moduls: 2 überprüft, dass die Teilung hatte keine Ruhe, in diesem Fall prüfen, ob das Ergebnis nicht enthalten decimal ( IF B = INT(B) )! Wenn der Division ist gleich seine volle, dann ist die Zahl ist gleich!
Wenn a unseren Wert geprüft werden müssen, kann das gleiche Ergebnis durch gelöst werden:
1 2 3 | a % 2 ) == 0 ) { if ((in% 2) == 0) { / / Auch } |
Oder, für 3, nach:
1 2 3 | a % 3 ) == 0 ) { if ((in% 3) == 0) { / / Durch 3 teilbar } |
Kleine Anmerkung: Dank der Strecke, wenn Sie mit den Potenzen von 2 annche es einen schnelleren Weg, um zu überprüfen, ob eine Zahl gerade oder ungerade ist zu tun haben. In binärer Schreibweise, in der Tat sind die Zahlen alle gleich auf das erste Bit Null! So mit den logischen Operatoren können Sie wissen, ob eine Zahl gerade oder ungerade einfach "Protestant" ist das erste Bit:
1 2 3 | ! ( a & 1 ) ) { if ((a & 1)) { / / Auch } |
In der Versammlung, zum Beispiel, das ist Brot und Butter! Es ist sogar noch unmittelbarer und einfacher (der Motorola 68020, hatte zum Beispiel eine Anweisung BTST , dass "geprüft" nur ein einziges Bit
). – moltiplicazione bit a bit) tra il nostro valore a e 1 (chiamato maschera ). Die logischen Operationen (AND, OR, NOT, XOR, etc ...), in der Tat, sind dafür bekannt, schneller in Bezug auf ausführen und dann "Time Machine"! (a & 1) führt die logische Operation der AND ( & - Multiplikation bitweise) zwischen unseren Wert a , und 1 (Maske genannt). Wenn a = 7 (00000111), zum Beispiel:
1 2 3 | 00000111 UND = 00000001 00000001; ungeraden |
Wenn a = 8:
1 2 3 | 00001000 UND = 00000001 00000000, gleich |
Nicht nur können wir prüfen die Zahlen, das heißt, mit dem ersten Bit auf 0, und somit durch 2 teilbar, kann aber auch auftreten, wenn eine Zahl durch 4 teilbar, 8, 16, 32, 64, etc ... mit den entsprechenden Formularen:
1 2 3 | ! ( a & 3 ) ) { if ((a & 3)) { / / Durch 4 teilbar (Maske = 00000011 = 3), da 4 00000100) } |
Wenn die letzten beiden Bits auf Null gesetzt werden die Zahl durch 4 teilbar ist! Wenn die letzten 3 Bits (Maske 00000111) auf Null ist die Zahl durch 8 teilbar ist! Und so weiter ![]()
Gskinner zeigt die Verwendung des Moduls in Fällen von alternativen Generierung von Werten. Ein klassisches Beispiel ist der Hintergrund eine Liste der Elemente ändern:. Eine weiße und eine graue Gskinner bietet:
1 2 3 4 5 | rowIndex % 2 == 0 ) { if (rowIndex% 2 == 0) { rowColor = 0xFFFFFF; { Else {} rowColor = 0xCCCCCC; } |
Zunächst können Sie den obigen Code mit einer einzigen Code-Zeile gelöst werden:
1 | 2 == 0 ) ? 0xFFFFFF : 0xCCCCCC ; rowColor = (rowIndex% 2 == 0) 0xFFFFFF: 0xCCCCCC;? |
Außerdem in diesem speziellen Fall möchte ich eigentlich vermeiden führen Sie eine "schwere" Form der Bedienung. Diese besondere Situation ist oft in einer Schleife engagiert, so wäre es "gut" nicht zu vergeuden Taktzyklen der Maschine. In diesen Fällen Ich mag die sauberste (und logische) Lösung:
1 | fooIndex == false ) ) ? 0xFFFFFF : 0xCCCCCC ; rowColor = (fooIndex = (fooIndex == false)) 0xFFFFFF: 0xCCCCCC; |
o false , a seconda di come vogliamo impostare inizialmente il nostro colore sfondo. Wo fooIndex precedentemete ist ein Wert auf true oder false , je nachdem, wie wir anfangs setzen unsere Hintergrundfarbe. Dieser Ansatz ist subtiler, weniger direkt auf den ersten, aber schneller, weil es logisch, true / false führt. la condizione (fooIndex == false) sarà falsa e di conseguenza fooIndex verrà impostato da true a false. Wenn fooIndex wahr ist, wenn die Anweisung ausgeführt wird (fooIndex = (fooIndex == false) ) die Bedingung (fooIndex == false) ist falsch und folglich fooIndex wird von true auf false gesetzt werden. verrà impostato da false a true! Das zweite Mal, aber die Bedingung (fooIndex == false) ist wahr, und dann fooIndex ist von false auf true gesetzt! Und so weiter ...
Wiederholungen: um das Verhalten beobachten
Die Finite-Arithmetik, welche die Grundlage für das Funktionieren der Betrieb des Moduls ist, ist es oft auch als Uhr Arithmetik bezeichnet. Ein klassischer Zeitmesser verfügt über ein Zifferblatt mit den Händen in 12 Stunden (12 plus 12 Tag-Nacht!) Unterteilt, die ausreicht, um eine der 24 Stunden am Tag zeigen. Um 08:00 Wenn ich Sie fragte, was Zeit Ihre Uhr wird zwischen 18 Stunden Partitur, wäre deine Antwort 8 +18 = 26 sein! Aber die 02:00 Uhr Nacht! Unwillkürlich und ohne es zu wissen vielleicht, Operationen conitnuamente Form, wenn wir mit den Zeiten zu tun haben.
In Italien sind wir auf das System 24 Stunden (oder gemischt) verwendet. Wenn wir bis 16:00 Uhr zeigen wollen diese Stunde als in anderen Ländern als 16.00 Uhr angegeben. Wer nutzt die postfix am / pm, von denen ofa Nachtstunden zu unterscheiden, noch öfter führt der Betrieb des Moduls, Modul 12 in diesem Fall! Wir Italiener und andere, wobei jedoch daran gewöhnt, die 24 Stunden halten, Operationen mit Formblatt 24!
Als ich 11 in den Morgen (11:00 für alle) bin und denke, "in 5 Stunden", die Italiener 5 +11 reagieren = 16 (vier Uhr nachmittags), könnte ein Fremder auch Antwort 5 +11 = 4.00. Seit 5 + 11 klassische Arithmetik, ist offensichtlich 16, wie die Fremden 04.00 Uhr treffen? Er hat einfach laufen das Modul 12 auf das Ergebnis: 5 + 11 = 16 mod 12 = 4. Es ist nicht notwendig, dass Sie einen Taschenrechner zu ergreifen, um die Genauigkeit der Berechnung zu überprüfen, aber diese Schritte sind ein wenig 'all, zeigte ein Zifferblatt einer Uhr und legen Sie die Hände auf die 11 geistig, dann fügen Sie - immer optisch - 5 Stunden, wie von Geisterhand Sie tatsächlich über 4! Deswegen nennt man sie die vier am Nachmittag 16 ![]()
In Italien, statt, verwenden wir ein Formblatt 24, in der Tat: 11 +5 = 16 mod 24 = 16. Wenn ich bis 23:00 Uhr, 5 Stunden nach dem 28:00 nicht sein, weil 28 modulo 12 = 4! 122514884225 Formblatt 24 = 17! Was passiert ist, dass das wichtigste Ergebnis des Formblatt 24 nie mehr als 24. Aber das Interessanteste daran ist, dass die Zahlen beliebig wiederholt werden:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | 1% 24 = 1 2% 24 = 2 3% 24 = 3 ... 22% 24 = 22 23% 24 = 23 24% 24 = 0 25% 24 = 1 26% 24 = 2 27% 24 = 3 ... 48% 24 = 0 49% 24 = 1 50% 24 = 2 51% 24 = 3 ... |
Diese Wiederholung ist eine entwaffnende Leichtigkeit. Stellen Sie sich vor, zum Beispiel, sollten sie ein Objekt, eine MovieClip, ähnlich einem Schachbrett, in vier Spalten. Erstellen Sie ein MovieClip quandrato, 55 × 55 Pixel und die Fenster Eigenschaften esportiamolo als Simbolo . Der folgende Code wird unsere MovieClip auf vier Säulen haben, und werden "in charge" durch den Betrieb des Moduls:
1 2 3 4 5 6 7 |
cresce in modo indefinito. Wie man aus dem Code zu sehen, die Variable i Zyklus for wachsende unbestimmte Zeit. Aber die Koordinaten x unserer MovieClip nie einen bestimmten Wert überschreitet, und wird endlos wiederholt! Hier ist ein konkretes Beispiel:
Durch die beiden Knöpfe können Sie variieren die Anzahl der Spalten (die Form) und die Gesamtzahl der Elemente, mit dem Algorithmus vor.
Entwicklung Sprachen
I "wiederbelebt" werden in diesem Artikel von mir schrieb ein wenig "von Jahren. Ich geringfügig überarbeitet und aktualisiert ein bisschen hier und da, aber ich denke, es ist immer noch relevant und interessant.
EINFÜHRUNG
Was ist eine Programmiersprache? Ein Computer, auch bekannt als PC (Personal Computer), hat eine persönliche Sprache. Diese Sprache ist Maschinencode genannt, zu verstehen, dass jede Maschine, so dass alle Computer (PC kompatibel, Apple, Unix, etc. ...), hat eine einzigartige und proprietäre. Die Programme, die wir sehen "run" auf unsere PCs sind vor allem durch die mysteriösen Objekt mit dem Namen eines Mikroprozessors durchgeführt. Dies ist das Herz, das intelligente Modul, jeden Computer. In der Tat ist nur eine Anwendung nicht ausgeführt, sondern wird durch den Mikroprozessor unterstützt, so zu sprechen, was man ein Betriebssystem: eine Software-Schicht, die durch den Hersteller der Maschine geliefert (siehe zum Beispiel den Apple Macintosh).
Once upon a time ...
"Once upon a time" einer Zeit, wo das Wort keine Bedeutung Personal Computer hatte. Es war die Zeit der Konsole, kleine Gadgets, die an den Fernseher, den Vorläufern der angeschlossenen Playstation heute. Intellivision,: Und wirklich konnte man in Zeitschriften aller Farben zu sehen Atari - für die Zeit - das garantiert Spaß mit Staunen gekoppelt, Philips, große Maschinen. Und hier sind die ersten Zeitschriften, wie zum Beispiel das Jahrbuch von Videospielen (im Bild) im Jahr 1984. Die Anzeigen, die attraktiv für die Zeit, zeigte eine Technologie nie zuvor gesehen. Es war die Colecovision mit seinem Videospiel-System ", ein Heim-Konsole für Videospiele auf Patronen ColecoVision Standards", die außergewöhnlichen Preis von 485.000 Lire.
Gruß

Es begann alles von hier ... die besten Wünsche zu meinem ersten Personal Computer, wie es an der Zeit, dass, obwohl es jetzt technisch vorbei, immer bleibt in Seele und Erinnerung an viele unübertroffene beworben wurde!
Emulator Assembler 6502
Während wir über das Thema Nostalgie sind, ist hier eine schöne Nachbildung des historischen 6502 Mikroprozessor , in den 80er Jahren in die Konsole und Computer als Apple, Commodore NS und der Nintendo 64 angebracht (dann im Schritt 6510, ...). Dieses nette kleine Juwel ist komplett in JavaScript geschrieben und läuft auf nahezu allen Browsern (Safari Opera), mit dem einzigen Nachteil war ein wenig langsam. Aber es wert. Auf der Website ( http://www.6502asm.com/ ) fanden einige schöne Beispiele, aber neugierig Linse.
Code für Commodore 64
Ich erholte mich meinem Block zu sehen, der Commodore 64-Port dell'emultatore FC64 vorgeschlagen Quach Beitrag it! Leider sind einige Funktionen der Tastatur nicht ganz geschafft, um ihnen zu arbeiten, so könnte ich versuchen, und legte einige interessante Listen (alte nostalgische Erinnerungen). Wenn Sie sich erinnern den Commodore 64 hatte spezielle Kombinationen, die beim Schreiben BASIC-Code, als das Symbol der negativen R (rückwärts) oder das kleine Herz, immer negativ, um den Bildschirm zu wischen.
Commodore 64 Emulator Web
Wenn Sie die beiden letzten Beiträge schrieb ich (read Net Software -und Web Amiga Emulator ), das die direkte Folge sein scheint. Apropos, dann, von Emulatoren und Flash 9 mit ActionScript 3.0, hier ist etwas wirklich toll, mit Ausnahme von Nostalgie. Das Projekt heißt FC64 und will Low-Level-Emulation der glorreichen Commodore 64 werden! Es war in ActionScript 3.0 geschrieben und dann den Film sehen (ich fühle mich komisch, nennen diesen Film so etwas ...), sollten Sie installieren Version 9 des Adobe-Plugin.









Neueste Kommentare
Giovambattista Fazioli : @ paso: absolut. Einfach Identifizierung des Feldes [cci] Eingang [/ cci] Sie wollen ...
paso : Hallo, ich möchte eine Service-Anfrage, können Sie die datepicker mit cform7 ich spiegp gut ich kann zu implementieren ...
Simon : Es ärgert gestört wieder ein und verwenden, die Platz für diese Dinge ... aber es funktioniert nicht ...
Giovambattista Fazioli : @ Barbara: Wenn Sie meinen, die unten anfangen aufzuschreiben, was es auf dem hängt ...
Barbara : Hallo, ist sehr interessant, aber wie kann man an der Unterseite statt der oben schreiben? Dank