User:Edward

From Sinclair Wiki
Revision as of 06:40, 9 February 2011 by Edward (talk | contribs) (User page... lot of projects, not much completed)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

I'm a young and hotheaded coder who's occasionally been a bit of a nuisance in the past, but now even Guesser thinks I've grown up.

I spend my time learning undergrad maths at Cambridge, and hacking up anything and everything in C (from an IRC client to the lambda calculus, and most things in between).

I hang around on #spin and #speccy on irc.coldfront.net; occasionally I post to WoS (as AY Chip) or comp.sys.sinclair (as ec429).

My location on the web isn't all that constant, but there's usually an up-to-date pointer at [1]. My website runs a homebrew webserver running on my laptop, so occasionally Bad Things may happen to it (it doesn't fall over much).

Things I'm responsible for

My main crime against Specchumanity is the scrplus image-converter, which started out as a tool for the ULAplus but is now branching out and becoming a general image conversion tool. Somewhat unusually for a project of mine (I'm a Linux fanboy through and through), it's also available for Windows.

I'm also working on a Spectrum emulator, Spiffy, but the Z80 core isn't finished yet, let alone peripherals. Spiffy is unusual in that the main bus (A0-A15, D0-D7, /MREQ, /IORQ, /RD, /WR, /M1, /RFSH, /WAIT) is fully populated with the correct control signals; for instance all memory reads by the Z80 are actually performed by asserting the bus, then reading D0-D7 on the next Tstate. In other words, the communication between the Z80 and other 'virtual chips' is confined entirely to the virtual bus. Hopefully this should make it easier to implement peripherals.

Another project is bast, a sort of compiler-linker for ZX Basic. Actually 'compiler' might be the wrong word, since it doesn't actually compile Basic to m/c; rather it compiles a text file on the host machine into a .TAP file containing a tokenised Basic program. It also does some clever stuff like linking in binary (m/c) segments, auto-numbering program lines, and some optimisations. Interface-wise, it's a command-line program with lots of options, somewhat modelled on gcc (which might have been a mistake). The name is an abbreviation of "The BASIC Tapemaker".

Getting into a narrower niche now, I'm hacking on a FUSE (that's Filesystem in Userspace, not pak21's emulator) driver for the Spectranet's TNFS (Trivial Network File System); it's called tnfuse.

Then of course there's a load of non-Speccy-related stuff, most of which lives on my github page or dotted around SourceForge (where my username is Soundandfury); a comprehensive list may or may not exist somewhere on my website.