Technorati
S35299BW8FNN
Hiermit stelle ich hier nach einer langen Zeit wieder mal ein Projekt von mir vor. Diesmal ist es eine ECMAScript Engine. Für die, die es nicht wissen, ECMAScript ist die von der ECMA unter ECMA-262 standardisierte Form von JavaScript, jedoch ist ECMAScript nicht vollständig komplett zu JavaScript identisch (mehr dazu zum Thema siehe Wikipedia zum Suchbegriff JavaScript oder ECMAScript). Meine ECMAScript Engine trägt den Namen BESEN, was wiederum für "Bero EcmaScript ENgine" steht, und besitzt zudem Just-In-Compilation (zurzeit nur für 32-bit x86), Property Inline Caching, Codeoptimization, und viele weitere Dinge.
Es steht zudem unter einer OwnLicense+AGPLv3 Duallizenz.
Hier eine englische Liste der Features von BESEN für den groben Überblick:
Seit heute gibt es den BeRoXM Player auch nun fürs Nokia N900 bzw. Maemo 5 im offziellen Maemo Extras-Devel Repository ( http://repository.maemo.org/ ) und in meinem eigenen Maemo 5 Repository, wo die Repository Daten wie gefolgt lauten:
Katalogname: BeRo
Internetadresse: http://vserver.rosseaux.net/repositories/maemo/
Verteilung: fremantle
Komponenten: main
Oder ihr ruft auf eurem N900 direkt die folgende Install-URL http://vserver.rosseaux.net/repositories/maemo/install/fremantle/main/beroxmplayer.install auf.
Zudem ist BeRoXM Player, zumindest meinem Kenntnisstand nach, auch die erste Multimediaapplikation für Maemo5 bzw. fürs Nokia N900, die in ObjectPascal implementiert ist und mit FreePascal übersetzt wurde, und das ganz ohne Hilfe des offziellen Maemo SDKs. 
Viel Spass damit und zudem auch immer schön Bugs reporten bitte :)
Ich hab seit 2 Tagen neben meinem G1 und Milestone auch nun ein Nokia N900. Ich habe diese deshalb nun miteinander verglichen und will nun meine Erfahrung hier wiedergeben.
Nachdem ich meinen Dell XPS M1330 mit 4 GB RAM (vorher: 2GB RAM), einer SuperTalent UltraDrive GX 128 GB SSD (vorher: 160GB HDD) und einer neuen Intel WiFi Link 5300AGN 802.11 Draft-N WLAN MIniPCIe Karte (vorher Broadcom BCM4328 802.11a/b/g/n MiniPCIe Karte, damit WLAN endlich auch nun unter Linux einwandfrei tut) aufgerüstet habe, wollte ich näturlich es wieder so haben, dass ich mit der Dell MediaDirect Taste zum einschalten Linux booten kann und mit der normalen Einschalttaste Windows.
Vorher auf der 160 GB HD war es über einen entsprechenden boot.ini Eintrag auf der versteckten Dell Media Direct Windows XP Embedded Partition gelöst, der dann darauf hin den GRUB Bootsektor lud.
Aber nun hatte ich eine neue leere SSD mit nichts drauf. Ich partitionierte von daher aller erstmal die SSD mit der UBCD in 6 Partitionen. Und zwar so:
| /dev/sda1 | 29.81 GB | NTFS | Windows 7 System |
| /dev/sda2 | 14.85 GB | NTFS | Daten |
| /dev/sda3 | 54.93 MB | Hidden FAT16 | Für OSDev Zeugs ausser QEMU ... |
Ich habe für meinen Gigabyte M912M mit einem PenMount 6000 USB Touchscreencontroller nun einen eigenen Touchscreentreiber bzw. Linux Daemon geschrieben, da für Ubuntu 9.10 vom Hersteller bisher kein offziellen Treibersupport gibt. Und hier ist der Link
http://vserver.rosseaux.net/projects/brutsd/
BRUTSD sollte aber eigentlich auch für viele andere Touchscreencontroller und bei den vielen anderen Linux Distributionen funktionieren.
Ich hoffe ihr habt Spass damit 
Diesmal möchte ich euch einen Podcast empfehlen, den ich regelmäßig oft während des Codens höre, und dieser Podcast heißt Chaosradio Express. Der Podcast wird vom Tim Pritlove moderiert, der oftmals quer durch ganz Deutschland, und manchmal auch in die Schweiz und in Österreich, reist, um interessante Themenbereiche aller Art durchzuleuchten.
Und warum ich diesen Blogpost nun poste, hat auch einen einfachen Grund, welchen ihr hier nachlesen könnt.
Ich habe für mein neues G1 / HTC Dream ein kleines Tool geschrieben, das ein fehlendes Feature von Android nachrüstet, und zwar das manuelle erneute Einlesen der (micro)SD Karte nach neuen Mediendateien wie z.B. Musik-, Video- und Bilddateien, so dass diese nach einer ADB Push Operation, einem afile Transfer, einem Bluetooth Dateitransfer etc. ohne Reboot oder Unmount/Remount der (micro)SD Karte dann in der Android Gallerie auftauchen. Hier der Download QR Code für den Barcode Scanner bzw. Link für den Android Market:
Mein SMS <-> POP3/SMTP Gateway mit dem Namen BeRoSMSDaemon kurz BRSMSD funktioniert auf meinem M912M mit der Novatel EU850D prima. Damit kann ich nun mit jedem x-beliebigen Mailclient SMS Mitteilungen senden und sowie empfangen.
BRSMSD enthält einen kompletten MIME Encoder/Decoder mit Support für alle möglichen Charsets inkl. UTF8 und einen HTML-to-TextPlain Konverter, der unter anderem auch Tabellen etc. korrekt zu einer ASCII Grafik konvertiert. Überlange SMS bzw. EMS werden näturlich auch komplett unterstützt.
Die POP3 und SMTP Kommunkation an sich ist in mehreren Threads ausgelagert, und unterstützt bei SMTP die HMAC-MD5 Authentikation und bei POP3 die APOP Authentikation. IMAP-Support war zwar mal geplant aber nach paar Überlegungen kam ich zu dem Entschluss, dass das hier für diesen Einsatz für SMS Mitteilungen doch etwas overkil wäre, zumindest im Verhältnis zum Implementation/Debugging Aufwand.
Zudem gibt es dann noch zwei Kammandozeilen Tools brsmsdread und brsmsdsend. Mit brsmsdread ...
Ich habe meinen Netvertible M912M von Gigabyte um 3G Draft-802.11n eine flotte 128GB SSD und auf 2 GB RAM aufgerüstet.
Als neue WLAN MiniPCI Express Karte kommt die Intel WiFi Link 5100AGN zum Einsatz, die auch unter Linux bei mir direkt out-of-the-box funktioniert, und auch nur zwei statt für Draft-N eigentlich drei Antennen benötigt, so dass die perfekt die alte B/G only Atheros WLAN MiniPCI Express Karte ersetzen kann.
Als GSM/GPRS/EDGE/UMTS/7,2mbitHSDPA/GPS MiniPCI Express Karte kommt die Novatel EU850D zum Einsatz, wo ich vorher noch den PIN 20 Kontakt verkratzt und durchschnitten habe, so dass der PIN 20 keinen Kontakt mehr zur restlichen Elektronik auf der MiniPCI Express Karte hat, damit die EU850D MiniPCI Express Karte überhaupt im M912M dank einem Hardware Lock funktionieren kann. Das Überkleben des PIN 20 mit einem Isolierband habe ich selbstverständlich vorher auch versucht. Allerdings verrutschte da das Isolierband immer beim Einstecken, so dass der PIN 20 dummerweise dann wieder ...
