Monday, 20 February 2012

Emulator update

Since the old blog faceplanted I've not added many new features to the teletext emulator apart from a page cache.  I wanted to address speed issues with the display - it was really slow on a friend's XP machine, and it shouldn't have been - after all, this teletext we're talking about, that was invented nearly forty years ago and ran perfectly well on a BBC Micro, but can't be emulated very well on an XP machine?

I pinned the performance issues down to the rendering of the page.  The decoder logic is nippy enough, but when it came to rendering the decoded teletext to the display it slowed down considerably.

This was using GDI+, the display API that comes out of the box with VisualStudio.  I've since added a renderer using Windows Presentation Foundation, as that uses DirectX for its rendering without me actually having to figure out how DirectX works.  This is an improvement, but not a vast improvement.  I've added other methods of display too, but they seem to come with their own baggage.  For example, TextBlocks won't render without borders around them where it antialiases the graphics to fit on a particular resolution - it seems to be a problem with WPF apparently.

What do you have to do these days to get a character-mapped display?!!

No comments:

Post a Comment