USB experiment inferface board

Even I can now control the world outside my computer. With the USB interface board K8055 from Velleman, Belgium, you can access to the board via DLL. It´s easy to use i.g. in VisualBasic Express. (I did so last night – faszinating!) That reminds me on old Commodore Plus/4 times!




I tested it on a Windows XP system, but it also should work on Linux. Now let´s see, what cases I´m going to resolve. :-)


Manufacturer: http://www.vellemanusa.com/us/enu/product/view/?id=500349


medienfloh

GTA 1 + GTA 2 + Wild Metal downloadable for free

“In 1999, Rockstar Games and Rockstar North (then known as DMA Design) furthered the groundbreaking gameplay concepts established just two years prior in the original Grand Theft Auto – with the release of GTA2. GTA2 expanded on the top-down, open-ended crime world gameplay formula with a host of new features including the advent of multiple rival gangs – seven, to be exact, including the Yakuza, Scientists, Looneys, Rednecks, Zaibatsu, the Russian Mob and Hare Krishnas. Earn your respect with each gang. Reap the benefits with all manner of shady work-for-hire gigs contracted your way. And climb your way to the top of the criminal pile.

Now, longtime Grand Theft Auto fans can revisit this classic entry in the series – and new jacks who missed out on this early franchise title can further discover Grand Theft Auto’s roots – absolutely free. GTA2 has been completely optimized for play on modern PCs and is available gratis for all registrants to the Rockstar Games mailing list (rest assured your information will not be shared with any third parties, you will only receive information from Rockstar). Simply fill out the form below and check your email for a direct link to the file (353 MB .zip file, includes install .exe, readme .txt file, and a .pdf of the original PC game manual).”

Source: http://www.rockstargames.com/classics/

writing a raytracer

SuperJer just had some time to spare and before getting bored he started to write a raytracer from scratch and write about it on the intertubes:

“Ray-tracing works sort of like a camera in real life, but in reverse. With a camera (or your eyes, for that matter), rays of light from the environment enter the lens and hit the film/digital chip/meaty eye cells. Something magical happens where the light hits and we get an image!
With ray tracing, we start at each point on our “film” or image, and blast a ray out of our camera lens and see what it hits. What it hits determines the color and brightness at that spot on the film. Of course by “film” I mean digital image, and by “spot” I mean pixel.
I decided my entire program would be centered around one function, called raytrace(). The idea is this: You give raytrace() a starting point and a direction, and it follows that ray until it collides with something in my virtual environment. It returns the color of the object it collided with.
When generating a 3D image, raytrace() will find the color for just ONE pixel in the result image. By running raytrace once for each pixel, we can get the whole scene! Ray-tracing is kind of slow because, for example, in a 1 megapixel image you’d have to run it 1 million times.”

He even has put up some pictures and videos:

You can even get the whole sourcecode (C++ with no dependencies whatsoever) from his site. Continue at source…

Source: http://www.superjer.com/pixelmachine/

Atari code posters…

“Like any other game console, Atari 2600 cartridges contained executable code also commingled with data. This lists the code as columns of assembly language. Most of it is math or conditional statements (if x is true, go to y), so each time there’s “go to” a curve is drawn from that point to its destination.

When a byte of data (as opposed to code) is found in the cartridge, it is shown as an orange row: a solid block for a “1” or a dot for a “0”. The row is eight elements long, representing a whole byte. This usually means that the images can be seen in their entirety when a series of bytes are shown as rows. The images were often stored upside-down as a programming method.”

And it looks like this:

Source: http://benfry.com/distellamap/

rewire the web…

The internet comes up with new ideas of information transformation and management every day. Yahoo now came up with a great idea of how the users could almost freely transform syndicateable data to anything they like.

Yahoo says this about it’s new baby:

“Pipes is an interactive feed aggregator and manipulator. Using Pipes, you can create feeds that are more powerful, useful and relevant.”

If you ever wanted to connect NY Times articles to Flickr, you can do this and many other things now. You even get a decent editor:


(yes, that’s in a webbrowser…)

Go and give it a try.

Source: http://pipes.yahoo.com/

Failure Trends in a Large Disk Drive Population

“When your server farm is in the hundreds of thousands and you’re using cheap, off-the-shelf hard drives as your primary means of storage, you’ve probably good a pretty damned good data set for looking at the health and failure patterns of hard drives. Google studied a hundred thousand SATA and PATA drives with between 80 and 400GB storage and 5400 to 7200rpm, and while unfortunately they didn’t call out specific brands or models that had high failure rates, they did find a few interesting patterns in failing hard drives.”

Grab the pdf here.

Source: http://216.239.37.132/papers/disk_failures.pdf

getting "Crackdown" early…

I just realised that I got my copy of Crackdown more than 5 days earlier than I was supposed to be. Crackdown is available in stores starting Feb. 20. Oh and it’s a great great game. GTA is nothing compared to this one…

Those who are also getting crackdown may want to consider visiting http://crackdown.wikispaces.com/. You can find some great maps there that come in handy when you’re on the orb hunt.

And for those who want to try co-op: add me to your friendslist (gamertag is “bietiekay”) and we’ll do a co-op mission or two.

the .NET Micro Framework is out

“The Microsoft .NET Micro Framework combines the reliability and efficiency of managed code with the premier development tools of Microsoft Visual Studio to deliver exceptional productivity for developing embedded applications on small devices.

The .NET Micro Framework brings a rich, managed-code environment to smaller, less expensive, and more resource-constrained devices. Requiring only a few hundred kilobytes of RAM and an inexpensive processor, the .NET Micro Framework was built from the ground up to let you build applications using familiar Visual Studio development tools.

With .NET Micro Framework SDK, you can develop your embedded solutions in C# using a subset of the .NET libraries focused on embedded applications. Your development environment is Visual Studio, where you can take advantage of its powerful editing, object browsing, project management, and debugging capabilities. These capabilities are available when using the .NET Micro Framework SDK’s extensible device emulation system or on real hardware.”

Source 1: more info
Source 2: Download

dual-head notebook…oh yeah

I think the dream of a friend of mine just materialised itself in front of us: the dual-screen portable computer:

“Estari’s 2-VU™ dual-screen computers are two touch screen, full-page, full-color, multimedia electronic computing devices. The 2-VU™ uses dual-screen technology specified in the U.S. patent awarded in 1998. The 2-VU™ operates using the Microsoft Windows® XP Professional operating system and has the capability to attach an external keyboard and mouse with integrated USB ports or through the use of wireless devices. Estari’s new 2-VU™ is easy to use and does not require users to learn different operating systems or software applications.”

Be ready to put down $ 4350 for it. Ouch.

Source: http://www.estari.com/proplus1520m.cfm

Super Mario deconstructed

“This is a deconstructed Nintendo emulator that shows how sprites and sprite memory are handled while a game is being played. The intent is to show insight for how software and hardware work, given the relatively simple example of a minimal architecture from an old game console system.”

Source: http://acg.media.mit.edu/people/fry/deconstructulator/

Flip3D replacement – Split3D

“It’s not actually an Expose clone, because the window thumbnails are placed on a circle. You can cycle through them using the mouse or the keyboard. It has keyboard and mouse triggers, and in a future version it will include also speech recognition. You can even replace Win+TAB so that SmartFlip appears when the key combination is pressed.”

“You can download a beta version here: http://smartflip.110mb.com/SmartFlip.zip”

The author writes that you should experiment with the options dialog (which looks quite nice):

YAPS progress

We’re making quite some progress on YAPS these days. And since the recording and live-streaming part is doing great so far we decided to go for some new features. We were not that creative in the last months when it comes to the settings implementation – and the fact that it’s not that useful in the moment for myself (and the people that are using it) we did not develop in that direction since the last update on YAPS. I will offer support for everyone who would like to try out YAPS. But back to business: What new features are there?

  1. we added Authentification to the HTTP server. It’s some simple stuff just based on the accessing IP adress, but you can specify certain capabilities for each accessing IP like “CanCreateRecording” or “CanAccessLiveStream”. The data is stored in a data structure and can be saved to disk in the future but at the moment it’s all source-hard-coded.
  2. XBOX Media Center (XBMC) support was added in the last builds. And that means: support for Live-TV streaming and support for watching the recordings. Yes, correct: Live-TV and recordings on your TV via an XBOX.
    To stop teasing and start showing it:

As you can see… you got some kind of OSD (which you also can turn-off) and a neat GUI. I can use the XBOX remote to change channel.

It’s looking great, isn’t it? And of course there are the recordings: All lined up and ready to be viewed.


caching…

So that are some nice little features. Since I am currently using one 500 Mhz P3 machine to serve 4 TVs it shows that it also scales quite well. (One recording + one live-tv takes about 2% CPU time). I can’t wait to here your feedback!!1!

Oh yeah, statistics are great. And YAPS now is a bit over 8000 lines of code and still growing. Of course developers are needed – if you want to take part in the YAPS development contact us…)

here is the changelog:

04.02.2007

  • fixed a bug in the http servers file accessing module – a CurrentlyRecording could only be watched to the point it reached while the watching started

01.02.2007

  • added CurrentlyRecording Playlists to the XBMCSyncProcessor (added XBMCPlaylistFilesHelper class for that matter)
  • changed http server so that it now displays the accessing IP
  • added disk based logging (ConsoleOutputLogger.WriteLogfile)
  • added checking for .log file extension in http server to prohibit access
  • changed started to optimize settings pages
  • fixed a bug in the logfile writer that was triggered when multithreaded logging was done

31.01.2007

  • added TimeShiftProcessor which implements a circular buffer in memory (working on a buffer which is stored on disk)
  • fixed a bug where you could not watch a recording while it has been recorded; you can now watch it even if it was not recorded completely…when you fastforward through the movie, be careful: it’ll say EOF if you reach the end
    of what has been written (thanks to Matthias Raacke)

30.01.2007

  • fixed XBMCSyncProcessor bug that caused constant checks on currently running recordings
  • added AuthentificationEntry – capability based permission settings
  • added capability based persmission settings – canAccessLiveStream, canAccessRecordings, canAccessThisServer, canCreateRecordings, canDeleteRecordings, isAdministrator
  • fixed minor bug in LiveStream permission testing

29.01.2007

  • added XBMCSyncProcessor to sync the playlist files on the harddrive to the YAPS recordings – means: delete the playlist file and the recording is deleted as well
  • added RecordingsManager for playlist filename creation and correct recordings deletes
  • changed filename – added some more whitespaces

23.01.2007

  • fixed a bug in the XBMC Playlist creation process (if a recording name was used more than once only the last one got a playlist file)
  • corrected some minor bugs in the REMOVERECORDINGFILE http server command
  • some cosmetic changes to the playlist filenames

22.01.2007

  • added XBMC compatible .strm playlist file creation and removal (in ./Playlists directory)

16.12.2006

  • increased the ThreadedCacheWriter cache size by the factor 5 – in the past on very fragmented harddisks
    the recordings were corrupted by lost packets
  • fixed the %played_percentage% bug, the value is now displayed correctly and in all cases

10.12.2006

  • corrected a spelling error in the “Reset PlayCount” section of the HTTP server

08.12.2006

  • added line template for recorded listing

07.12.2006

  • fixed some minor design issues
  • converted recordings.html to new template
  • fixed spelling in help.html

12.11.2006

  • added FileSize to the recording info
  • added played_percentage placeholder to the “One-Line-Rendering”-Engine

08.11.2006

  • added “ResetRecording” functionality to the /vcr/ path: resets the current play position “rewinds the tape”

07.11.2006

  • added the long awaited Recording/Recorded Listing Placeholders
    %render_recorded_table(templatefilename)% and %render_recording_table(templatefilename)%
  • added according placeholders for the Listing Templates: %playcount%, %starts_at%, %ends_at%, %runtime%, %channel%, %recording_name%, %categories%, %recording_id%, %recording_status%
  • some minor changes to the index.html and recordings.html
  • added recording_line.template and recorded_line.template files

02.11.2006

  • added recorded at column to the PlayList Manager

01.11.2006

  • added sorting to the XML feed (newest recording is first entry in XML feed)

26.10.2006

  • fixed some loop bugs in PlayListManager
  • added click-and-start-playing functionality to PlayListManager

25.10.2006

  • added %render_recorded_table()%; not yet functional
  • added application “PlaylistManager”, based upon the Recordings RSS Feed a MPlayer playlist can be generated…
  • fixed a resizing bug in PlayListManager

18.10.2006

  • added demo-settings containing donerecordings, categories and recordings…

15.10.2006

  • changed the settings pages to use the footer and header templates, prepared for XHTML1.1

12.10.2006

  • added skins-subfolder, containing default-subfolder with images and stylesheet for the default-design
  • changed index.html-template to use skins-folder and moved all design-related stuff into stylesheet
  • changed rewrite of index.html in XHTML 1.1 with div-based layout
  • updated the YAPS toolbar graphics in the CorelDraw! file
  • added YAPS_logo_complete.png
  • added correct mime-type handling to the HTTP Server (text/css, text/html, text/jpeg….)
  • changed the
     tag in TemplateProcessor ConsoleOutput placeholder  

  • changed console, help and addrecording templates to validate as XHTML 1.1
  • fixed some design issues with new css-styles
  • fixed a encoding bug in the http html handler which now outputs UTF8 which was UTF-16LE
  • added HTTPAuthProcessor and IPAuth frame
  • added validIPAdresses and AccessFromThisIPAllowed to the HTTP server; ATTENTION: only localhost and some of my private IPs are allowed, you can change that in the YAPS.CS (see inline comments)

11.10.2006

  • added %include(filename)% keyword to the template parser
  • added Loop-Detection for %include(filename)% keyword

As usual you can grab the daily build here: http://www.slow-backward.de/YAPS_daily_build.zip or just build one yourself using the great MSBuild tools. I wrote about that here and you can get the subversion access here.

We appreciate every single user feedback we get. If you got an idea, if you want to have a feature in YAPS or anything else. Don't hesitate and contact us.