Documentation
Monday, 30th October 2006
This is a standalone application I've been sporadically working on which will be bundled with Latenite, but is perfectly usable away from it.
It's a plugin-extendable document browser. You can use it to manage a library of documents and display them in the tabbed browser on the right. It comes with plugins supporting text files, Rich Text documents, and anything IE supports (so in this case it's HTML and PDF).
I've also wrapped the XP Picture and Fax viewer as another plugin, but am having a few problems with that so I'm not sure if I'll end up writing my own image viewer. Multipage TIFFs would be nice, though.
Plugins can expose their own toolbars - hence the text file has a dropdown button with a list of encodings, which has been very handy for those hundreds of DOS text files I have knocking around.
The library is stored in an XML document, and I'm intending on devising a format for easy distribution of documentation - probably something as simple as a Zip archive containing the relevant files and a small XML document that can be merged with the main library one.
Two nifty links, if you didn't know about them already - famfamfam's glorious "Silk Icons" set and the oh-so-useful SkyBound Visual styles (notice how my tabs on the left of the screenshots render correctly, even though they're upside down).
It lives..!
Wednesday, 25th October 2006
Thanks for the support, MrEvil, and thanks for noticing my rather dead tutorials section, linkofazeroth.
Sadly, I've been horribly busy recently - and so very little progress on any project. However, Brass 2 is starting to come together...
![brass_error_reporting.gif](/bin/brass2/dev/brass_error_reporting.gif)
Can you guess which device the code is for?
Well, it'll never be an IOTD, but it's something. With the syntax fixed, it does actually work (and outputs a valid binary). I've been trying to work out the syntax used (with valuable input from CoBB over at MaxCoderz). Currently it operates by loading the entire document, trying to work out what each "command" is, before running it and executing the various commands. This has one big problem I can see - macros won't work, as they need to operate on the tokens before they're executed. This is fine, but to declare a macro you'd need to use, for example, a .define directive - which doesn't get executed until long after the source has been loaded and broken into tokens, expressions and commands.
Lack of macros and a horribly incomplete Z80 assembler plugin mean that so far I've been unable to test alongside old calculator Z80 source.
Latenite and Brass 2
Wednesday, 11th October 2006
Both Latenite and Brass are getting a significant upgrade - and both are being written from scratch.
Both will sport a plugin-based architecture. This is most obvious with Brass - where pretty much everything - be it an assembler plugin or output plugin - can be extended by writing your own custom plugins. All Brass does is parse the basic syntax and pass it to the various plugins to work out what to do with it!
Latenite will load Brass and use it to provide feedback - such as error reporting and syntax highlighting - directly to the user.
General discussion is handled here; for what I mean with regards to Brass plugins, there's this post.
The basic idea is that you can plug in your own assembler and use it alongside Brass and Latenite.
Internal PS/2 Port
Friday, 6th October 2006
What's that in the bottom left hand corner?
Kerm Martian has added a PS/2 port to his calculator (click the picture for better pictures and the original thread). He has been developing a shell, entitled DoorsCS (click for website) which sports an impressive set of GUI controls - hence the mouse!