Archiv

Archiv für die Kategorie ‘Programmierung’

Serie: DOSBox unter Windows kompilieren 1/10

22. März 2009 1 Kommentar

1987 habe ich als 10 Jähriger Knirps mit meinem C64 herumgespielt. Eigentlich war zu der Zeit der 386er gerade aktuell, doch von solch einem Rechner konnte ich nicht einmal träumen ;-) Jedenfalls erschien im Jahre 1987 das Spiel Police Quest: In Pursuit of the Death Angel. Ich weiss noch, wie ich damals bei uns im Ort an die Herbstschau ging und da zum ersten mal dieses Spiel erblickt hatte. Das Spiel hatte mich sofort gefesselt. Man durfte selber steuern wohin man den Protagonisten schicken wollte und wenn man z.B. eine Tür aufmachen wollte, stellte man die Figur vor selbige und gab open door ein. Ich war sofort Feuer und Flamme und gab mein ganzes Taschengeld dafür aus, jeden Tag einen Messeeintritt zu erwerben um mich bei diesem Stand aufhalten zu können. Irgendwann liessen mich die Leute da sogar selber spielen! Und hätte es nicht so etwas wie Hunger, Durst, Schlaf oder Hausaufgaben gegeben, ich würde wohl heute noch dort sitzen :-)

Jedenfalls sind es solche Erinnerungen, welche mich persönlich immer wieder die alten Spiele hervorkramen lassen. Doch leider wird es immer schwieriger solche Spiele unter einem heutigen System überhaupt zum laufen zu bekommen. Die Spiele welche sehr Hardwarenah programmiert wurden, rasen bei den heutigen Gigahertzen nur so über den Bildschirm. Die ISA Soundkarten gibt es schon lange nicht mehr und von onboard PCI Karten wussten die damaligen Spiele noch nichts. Und von heutigen Monitorauflösungen jenseits von 640×480 will ich gar nicht erst anfangen zu sprechen.

Um also all diese Hürden überwinden zu können, bietet sich die Verwendung eines Emulators an. Und genau für diesen Zweck gibt es einen Emulator mit Namen DOSBox.

Mehr…

FLV Embed – Multimedia Button Erweiterung

6. Oktober 2008 Keine Kommentare

Wordpress Multimedia Button

Zum darstellen von Videos (wie etwa im Jack Keane Artikel) ist das WordPress Plugin FLV Embed ideal geeignet. Schade daran ist nur, dass dieses Plugin die Multimedia Schaltfläche nicht aktiv unterstützt. Will heissen, wenn man via Multimedia Button einen Flash Film einbinden will, dann kann man den Film zwar aus der Galerie auswählen, die nötigen Tags wie [flv :<Dateiname> breite hoehe] muss man jedoch immer noch selber darum herum schreiben.

Das was mir persönlich etwas lästig. Aus diesem Grund habe ich das Plugin so erweitert, dass bei einem Flash Film ein Button erscheint, welcher zum einen automatisch ein [flv : etc. darum herum packt, und zum anderen einfach einen Standard Wert von 320×240 Pixeln wählt.

Nachfolgend die Beschreibung, was man selber verändern muss.

Mehr…

QEMU Gamer Edition 0.9.1

8. Juni 2008 Keine Kommentare

Manchmal überkommt es mich und ich wühle ich in meinen alten Games herum. Gefunden habe ich dieses mal – passend zur EM – FIFA international Soccer aus dem Jahre 1994.

Leider ist das Spiel nicht mehr ohne Probleme unter neueren Betriebsystemen lauffähig. Will man es unter DosBox betreiben, stürzt das Spiel einfach ab. Auch nativ unter XP ist nicht viel zu machen.

Daher habe ich es einmal mit dem Opensource Prozessor Emulator QEMU versucht. Und tatsächlich, nach ein wenig herumprobieren konnte ich das Game starten. Dummerweise lief es aber zu schnell. Und im Gegensatz zur DosBox gibt es keine Möglichkeit den Emulator zu bremsen.

Glücklicherweise hat das Problem bereits Miroslav Novak gelöst. Er hat für die QEMU Version 0.9.0 einen Patch veröffentlicht, welchen ich für die aktuellste 0.9.1 als Grundlage verwendet habe. In der von mir angepassten QEMU Gamer Edition Version wurden ausserdem alle Prozessoren wie etwa SPARC oder ARM entfernt.

Will man die QEMU Umgebung verlangsamen, startet man einfach qemu.exe mit der Option -brake <WERT>. Wobei WERT der Zahl 0 entsprechen kann um die Verlangsamung zu deaktivieren oder einem Wert >0. Verwendet man z.B. die Option -brake 1000 wird der Emulator 10x langsamer.

Die von mir angepasste QEMU Version für 32Bit Windows Systeme kann man von hier herunterladen. Das Archiv wurde mit dem Opensource Packetierer 7zip gepackt.

Doppelte Einträge in Python Listen entfernen

2. Mai 2008 Keine Kommentare

Zur Zeit programmiere ich gerade einen kleinen Launcher für das Spiel Lure of the Temptress (hierzu später mehr in diesem Blog) in Python. Damit auch unerfahrene Windows Benutzer den Launcher benutzen können ohne vorher Python installieren zu müssen, habe ich das ganze mit py2exe umgewandelt und in eine exe gepackt.

Während des Arbeitens mit py2exe ist mir aufgefallen, dass die übergebenen Parameter (in diesem Fall Dateipfade zu DLL Dateien) manchmal doppelt vorkommen.

Will man diese doppelten Einträge eliminieren gibt es zwei sehr simple Möglichkeiten dazu:

Mehr…

KategorienProgrammierung, Tipps Tags:

PHP: Call to undefined function: utf8_decode()

10. Juni 2007 1 Kommentar

Das kommt davon, wenn man versucht seinen Rechner und die darauf laufenden Programme nach der Methode “alles raus was nicht benötigt wird” zu sichern. Irgend etwas vergisst man garantiert…

Mir wurde das bewusst, nachdem ich folgende Fehlermeldung beim betreiben des Blogs entgegengeschmettert bekam.

Call to undefined function: utf8_decode()

PHP will mir also mitteilen, dass er den übergebenen String gerne von UTF8 nach irgendwas decodieren möchte, dies jedoch aufgrund fehlender Funktionalität nicht möglich ist. Die Frage ist nur, wie kriege ich diese Funktionalität in PHP gepackt?

Die Antwort ist einfach. Man muss lediglich XML Unterstützung beim kompilieren aktivieren.

Wer (wie ich) Gentoo verwendet muss dabei nur wissen, welches USE Flag zu aktivieren ist.

  • Für PHP4 wird zwingend das USE Flag expat benötigt.
  • Für PHP5 wird zwingend das USE Flag xml benötigt.

So einfach kann es sein ;-)

KategorienLinux, Programmierung, Tipps Tags: