https://sinclair.wiki.zxnet.co.uk/w/index.php?title=User:Edward&feed=atom&action=historyUser:Edward - Revision history2024-03-29T13:32:51ZRevision history for this page on the wikiMediaWiki 1.39.6https://sinclair.wiki.zxnet.co.uk/w/index.php?title=User:Edward&diff=1990&oldid=prevZub: Let's use HTTPS2020-05-10T06:17:33Z<p>Let's use HTTPS</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en-GB">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 06:17, 10 May 2020</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l8">Line 8:</td>
<td colspan="2" class="diff-lineno">Line 8:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Things I'm responsible for ==</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Things I'm responsible for ==</div></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>My main crime against Specchumanity is the '''[<del style="font-weight: bold; text-decoration: none;">http</del>://sourceforge.net/projects/scrplus/ 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.</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>My main crime against Specchumanity is the '''[<ins style="font-weight: bold; text-decoration: none;">https</ins>://sourceforge.net/projects/scrplus/ 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.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>I'm also working on a Spectrum emulator, '''[<del style="font-weight: bold; text-decoration: none;">http</del>://github.com/ec429/spiffy Spiffy]''', which as of May 2012 can emulate a 48 well enough to load games from tape and play them, and supports a few peripherals such as the [[ZX Printer]], [[ULAplus]] and an [[AY-3-8912|AY chip]]. Spiffy is unusual in that the main bus (A0–A15, D0–D7, {{overline|MREQ}}, {{overline|IORQ}}, {{overline|RD}}, {{overline|WR}}, {{overline|M1}}, {{overline|RFSH}}, {{overline|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 and accurate ULA behaviour (contention, floating bus, and all that). Certainly, the peripherals I've implemented so far have been simple, self-contained additions to the source.</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>I'm also working on a Spectrum emulator, '''[<ins style="font-weight: bold; text-decoration: none;">https</ins>://github.com/ec429/spiffy Spiffy]''', which as of May 2012 can emulate a 48 well enough to load games from tape and play them, and supports a few peripherals such as the [[ZX Printer]], [[ULAplus]] and an [[AY-3-8912|AY chip]]. Spiffy is unusual in that the main bus (A0–A15, D0–D7, {{overline|MREQ}}, {{overline|IORQ}}, {{overline|RD}}, {{overline|WR}}, {{overline|M1}}, {{overline|RFSH}}, {{overline|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 and accurate ULA behaviour (contention, floating bus, and all that). Certainly, the peripherals I've implemented so far have been simple, self-contained additions to the source.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>There's also '''[<del style="font-weight: bold; text-decoration: none;">http</del>://github.com/ec429/blast blast]''', a curses-alike library, useful for making simple text-based interfaces. It can be used as an ASM library or a Spectranet module, and Z88DK C bindings are being developed by [[User:Guesser|Guesser]].</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>There's also '''[<ins style="font-weight: bold; text-decoration: none;">https</ins>://github.com/ec429/blast blast]''', a curses-alike library, useful for making simple text-based interfaces. It can be used as an ASM library or a Spectranet module, and Z88DK C bindings are being developed by [[User:Guesser|Guesser]].</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Another project is '''[<del style="font-weight: bold; text-decoration: none;">http</del>://github.com/ec429/bast bast]''' (yes, the similar names are confusing), 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".</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Another project is '''[<ins style="font-weight: bold; text-decoration: none;">https</ins>://github.com/ec429/bast bast]''' (yes, the similar names are confusing), 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".</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>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 '''[<del style="font-weight: bold; text-decoration: none;">http</del>://github.com/ec429/tnfuse tnfuse]'''. Also a driver for [[IDEDOS]] [[HDF_format|.HDF]] images and [[+3DOS]] partitions thereon, called '''[<del style="font-weight: bold; text-decoration: none;">http</del>://github.com/ec429/idedosfs idedosfs]'''.</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>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 '''[<ins style="font-weight: bold; text-decoration: none;">https</ins>://github.com/ec429/tnfuse tnfuse]'''. Also a driver for [[IDEDOS]] [[HDF_format|.HDF]] images and [[+3DOS]] partitions thereon, called '''[<ins style="font-weight: bold; text-decoration: none;">https</ins>://github.com/ec429/idedosfs idedosfs]'''.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>A project that I've started work on but not released yet is '''ZX Lisp''', a LISP system for the Speccy. I've written the (PC-based) compiler that converts LISP source into bytecode; still to do are the runtime and possibly a REPL (Read-Eval-Print Loop).</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>A project that I've started work on but not released yet is '''ZX Lisp''', a LISP system for the Speccy. I've written the (PC-based) compiler that converts LISP source into bytecode; still to do are the runtime and possibly a REPL (Read-Eval-Print Loop).</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Then of course there's a load of non-Speccy-related stuff, most of which lives on my [<del style="font-weight: bold; text-decoration: none;">http</del>://github.com/ec429 github page] or dotted around SourceForge (where my username is Soundandfury); a comprehensive list may or may not exist somewhere on my website.</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Then of course there's a load of non-Speccy-related stuff, most of which lives on my [<ins style="font-weight: bold; text-decoration: none;">https</ins>://github.com/ec429 github page] or dotted around SourceForge (where my username is Soundandfury); a comprehensive list may or may not exist somewhere on my website.</div></td></tr>
</table>Zubhttps://sinclair.wiki.zxnet.co.uk/w/index.php?title=User:Edward&diff=1318&oldid=prevZub: {{overline}} ;-)2015-05-23T01:59:47Z<p>{{overline}} ;-)</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en-GB">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 01:59, 23 May 2015</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l10">Line 10:</td>
<td colspan="2" class="diff-lineno">Line 10:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>My main crime against Specchumanity is the '''[http://sourceforge.net/projects/scrplus/ 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.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>My main crime against Specchumanity is the '''[http://sourceforge.net/projects/scrplus/ 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.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>I'm also working on a Spectrum emulator, '''[http://github.com/ec429/spiffy Spiffy]''', which as of May 2012 can emulate a 48 well enough to load games from tape and play them, and supports a few peripherals such as the [[ZX Printer]], [[ULAplus]] and an [[AY-3-8912|AY chip]]. Spiffy is unusual in that the main bus (<del style="font-weight: bold; text-decoration: none;">A0-A15</del>, <del style="font-weight: bold; text-decoration: none;">D0-D7</del>, <del style="font-weight: bold; text-decoration: none;">/</del>MREQ, <del style="font-weight: bold; text-decoration: none;">/</del>IORQ, <del style="font-weight: bold; text-decoration: none;">/</del>RD, <del style="font-weight: bold; text-decoration: none;">/</del>WR, <del style="font-weight: bold; text-decoration: none;">/</del>M1, <del style="font-weight: bold; text-decoration: none;">/</del>RFSH, <del style="font-weight: bold; text-decoration: none;">/</del>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 and accurate ULA behaviour (contention, floating bus, and all that). Certainly, the peripherals I've implemented so far have been simple, self-contained additions to the source.</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>I'm also working on a Spectrum emulator, '''[http://github.com/ec429/spiffy Spiffy]''', which as of May 2012 can emulate a 48 well enough to load games from tape and play them, and supports a few peripherals such as the [[ZX Printer]], [[ULAplus]] and an [[AY-3-8912|AY chip]]. Spiffy is unusual in that the main bus (<ins style="font-weight: bold; text-decoration: none;">A0–A15</ins>, <ins style="font-weight: bold; text-decoration: none;">D0–D7</ins>, <ins style="font-weight: bold; text-decoration: none;">{{overline|</ins>MREQ<ins style="font-weight: bold; text-decoration: none;">}}</ins>, <ins style="font-weight: bold; text-decoration: none;">{{overline|</ins>IORQ<ins style="font-weight: bold; text-decoration: none;">}}</ins>, <ins style="font-weight: bold; text-decoration: none;">{{overline|</ins>RD<ins style="font-weight: bold; text-decoration: none;">}}</ins>, <ins style="font-weight: bold; text-decoration: none;">{{overline|</ins>WR<ins style="font-weight: bold; text-decoration: none;">}}</ins>, <ins style="font-weight: bold; text-decoration: none;">{{overline|</ins>M1<ins style="font-weight: bold; text-decoration: none;">}}</ins>, <ins style="font-weight: bold; text-decoration: none;">{{overline|</ins>RFSH<ins style="font-weight: bold; text-decoration: none;">}}</ins>, <ins style="font-weight: bold; text-decoration: none;">{{overline|</ins>WAIT<ins style="font-weight: bold; text-decoration: none;">}}</ins>) 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 and accurate ULA behaviour (contention, floating bus, and all that). Certainly, the peripherals I've implemented so far have been simple, self-contained additions to the source.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>There's also '''[http://github.com/ec429/blast blast]''', a curses-alike library, useful for making simple text-based interfaces. It can be used as an ASM library or a Spectranet module, and Z88DK C bindings are being developed by [[User:Guesser|Guesser]].</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>There's also '''[http://github.com/ec429/blast blast]''', a curses-alike library, useful for making simple text-based interfaces. It can be used as an ASM library or a Spectranet module, and Z88DK C bindings are being developed by [[User:Guesser|Guesser]].</div></td></tr>
</table>Zubhttps://sinclair.wiki.zxnet.co.uk/w/index.php?title=User:Edward&diff=633&oldid=prevEdward: I don't go in #polo any more2012-09-25T16:58:59Z<p>I don't go in #polo any more</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en-GB">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 16:58, 25 September 2012</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l1">Line 1:</td>
<td colspan="2" class="diff-lineno">Line 1:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>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.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>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.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>I <del style="font-weight: bold; text-decoration: none;">spend my time learning undergrad </del>maths at Cambridge, and hacking up anything and everything in C (from an IRC client to the lambda calculus, and most things in between).</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>I <ins style="font-weight: bold; text-decoration: none;">studied </ins>maths at Cambridge, and <ins style="font-weight: bold; text-decoration: none;">spend my time </ins>hacking up anything and everything in C (from an IRC client to the lambda calculus, and most things in between).</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>I hang around on #spin, #speccy<del style="font-weight: bold; text-decoration: none;">, </del>#zx <del style="font-weight: bold; text-decoration: none;">and #polo </del>on irc.coldfront.net; occasionally I post to WoS (as ''AY Chip'') or comp.sys.sinclair (as ''ec429'').</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>I hang around on #spin, #speccy <ins style="font-weight: bold; text-decoration: none;">and </ins>#zx on irc.coldfront.net; occasionally I post to WoS (as ''AY Chip'') or comp.sys.sinclair (as ''ec429'').</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>My location on the web isn't all that constant, but there's usually an up-to-date pointer at [http://jttlov.no-ip.org]. My website runs a homebrew webserver running on my laptop, so occasionally Bad Things may happen to it (it doesn't fall over ''much'').</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>My location on the web isn't all that constant, but there's usually an up-to-date pointer at [http://jttlov.no-ip.org]. My website runs a homebrew webserver running on my laptop, so occasionally Bad Things may happen to it (it doesn't fall over ''much'').</div></td></tr>
</table>Edwardhttps://sinclair.wiki.zxnet.co.uk/w/index.php?title=User:Edward&diff=624&oldid=prevEdward: /* Things I'm responsible for */ idedosfs2012-07-31T18:33:54Z<p><span dir="auto"><span class="autocomment">Things I'm responsible for: </span> idedosfs</span></p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en-GB">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 18:33, 31 July 2012</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l16">Line 16:</td>
<td colspan="2" class="diff-lineno">Line 16:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Another project is '''[http://github.com/ec429/bast bast]''' (yes, the similar names are confusing), 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".</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Another project is '''[http://github.com/ec429/bast bast]''' (yes, the similar names are confusing), 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".</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>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 '''[http://github.com/ec429/tnfuse tnfuse]'''.</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>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 <ins style="font-weight: bold; text-decoration: none;">[[</ins>TNFS<ins style="font-weight: bold; text-decoration: none;">]] </ins>(Trivial Network File System); it's called '''[http://github.com/ec429/tnfuse tnfuse<ins style="font-weight: bold; text-decoration: none;">]'''. Also a driver for [[IDEDOS]] [[HDF_format|.HDF]] images and [[+3DOS]] partitions thereon, called '''[http://github.com/ec429/idedosfs idedosfs</ins>]'''.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>A project that I've started work on but not released yet is '''ZX Lisp''', a LISP system for the Speccy. I've written the (PC-based) compiler that converts LISP source into bytecode; still to do are the runtime and possibly a REPL (Read-Eval-Print Loop).</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>A project that I've started work on but not released yet is '''ZX Lisp''', a LISP system for the Speccy. I've written the (PC-based) compiler that converts LISP source into bytecode; still to do are the runtime and possibly a REPL (Read-Eval-Print Loop).</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Then of course there's a load of non-Speccy-related stuff, most of which lives on my [http://github.com/ec429 github page] or dotted around SourceForge (where my username is Soundandfury); a comprehensive list may or may not exist somewhere on my website.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Then of course there's a load of non-Speccy-related stuff, most of which lives on my [http://github.com/ec429 github page] or dotted around SourceForge (where my username is Soundandfury); a comprehensive list may or may not exist somewhere on my website.</div></td></tr>
</table>Edwardhttps://sinclair.wiki.zxnet.co.uk/w/index.php?title=User:Edward&diff=612&oldid=prevEdward: New project: ZX Lisp2012-05-05T16:19:58Z<p>New project: ZX Lisp</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en-GB">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 16:19, 5 May 2012</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l17">Line 17:</td>
<td colspan="2" class="diff-lineno">Line 17:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>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 '''[http://github.com/ec429/tnfuse tnfuse]'''.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>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 '''[http://github.com/ec429/tnfuse tnfuse]'''.</div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;"></ins></div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">A project that I've started work on but not released yet is '''ZX Lisp''', a LISP system for the Speccy. I've written the (PC-based) compiler that converts LISP source into bytecode; still to do are the runtime and possibly a REPL (Read-Eval-Print Loop).</ins></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Then of course there's a load of non-Speccy-related stuff, most of which lives on my [http://github.com/ec429 github page] or dotted around SourceForge (where my username is Soundandfury); a comprehensive list may or may not exist somewhere on my website.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Then of course there's a load of non-Speccy-related stuff, most of which lives on my [http://github.com/ec429 github page] or dotted around SourceForge (where my username is Soundandfury); a comprehensive list may or may not exist somewhere on my website.</div></td></tr>
</table>Edwardhttps://sinclair.wiki.zxnet.co.uk/w/index.php?title=User:Edward&diff=610&oldid=prevEdward: /* Things I'm responsible for */ fix link to AY-3-89122012-04-30T23:14:45Z<p><span dir="auto"><span class="autocomment">Things I'm responsible for: </span> fix link to AY-3-8912</span></p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en-GB">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 23:14, 30 April 2012</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l10">Line 10:</td>
<td colspan="2" class="diff-lineno">Line 10:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>My main crime against Specchumanity is the '''[http://sourceforge.net/projects/scrplus/ 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.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>My main crime against Specchumanity is the '''[http://sourceforge.net/projects/scrplus/ 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.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>I'm also working on a Spectrum emulator, '''[http://github.com/ec429/spiffy Spiffy]''', which as of May 2012 can emulate a 48 well enough to load games from tape and play them, and supports a few peripherals such as the [[ZX Printer]], [[ULAplus]] and an [[AY-3-<del style="font-weight: bold; text-decoration: none;">9812</del>|AY chip]]. 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 and accurate ULA behaviour (contention, floating bus, and all that). Certainly, the peripherals I've implemented so far have been simple, self-contained additions to the source.</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>I'm also working on a Spectrum emulator, '''[http://github.com/ec429/spiffy Spiffy]''', which as of May 2012 can emulate a 48 well enough to load games from tape and play them, and supports a few peripherals such as the [[ZX Printer]], [[ULAplus]] and an [[AY-3-<ins style="font-weight: bold; text-decoration: none;">8912</ins>|AY chip]]. 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 and accurate ULA behaviour (contention, floating bus, and all that). Certainly, the peripherals I've implemented so far have been simple, self-contained additions to the source.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>There's also '''[http://github.com/ec429/blast blast]''', a curses-alike library, useful for making simple text-based interfaces. It can be used as an ASM library or a Spectranet module, and Z88DK C bindings are being developed by [[User:Guesser|Guesser]].</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>There's also '''[http://github.com/ec429/blast blast]''', a curses-alike library, useful for making simple text-based interfaces. It can be used as an ASM library or a Spectranet module, and Z88DK C bindings are being developed by [[User:Guesser|Guesser]].</div></td></tr>
</table>Edwardhttps://sinclair.wiki.zxnet.co.uk/w/index.php?title=User:Edward&diff=609&oldid=prevEdward: Spiffy updates2012-04-30T23:13:31Z<p>Spiffy updates</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en-GB">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 23:13, 30 April 2012</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l10">Line 10:</td>
<td colspan="2" class="diff-lineno">Line 10:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>My main crime against Specchumanity is the '''[http://sourceforge.net/projects/scrplus/ 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.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>My main crime against Specchumanity is the '''[http://sourceforge.net/projects/scrplus/ 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.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>I'm also working on a Spectrum emulator, '''[http://github.com/ec429/spiffy Spiffy]''', which as of <del style="font-weight: bold; text-decoration: none;">December 2011 </del>can emulate a 48 well enough to load games from tape and play them. 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 and accurate ULA behaviour (contention, floating bus, and all that).</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>I'm also working on a Spectrum emulator, '''[http://github.com/ec429/spiffy Spiffy]''', which as of <ins style="font-weight: bold; text-decoration: none;">May 2012 </ins>can emulate a 48 well enough to load games from tape and play them<ins style="font-weight: bold; text-decoration: none;">, and supports a few peripherals such as the [[ZX Printer]], [[ULAplus]] and an [[AY-3-9812|AY chip]]</ins>. 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 and accurate ULA behaviour (contention, floating bus, and all that)<ins style="font-weight: bold; text-decoration: none;">. Certainly, the peripherals I've implemented so far have been simple, self-contained additions to the source</ins>.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>There's also '''[http://github.com/ec429/blast blast]''', a curses-alike library, useful for making simple text-based interfaces. It can be used as an ASM library or a Spectranet module, and Z88DK C bindings are being developed by [[User:Guesser|Guesser]].</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>There's also '''[http://github.com/ec429/blast blast]''', a curses-alike library, useful for making simple text-based interfaces. It can be used as an ASM library or a Spectranet module, and Z88DK C bindings are being developed by [[User:Guesser|Guesser]].</div></td></tr>
</table>Edwardhttps://sinclair.wiki.zxnet.co.uk/w/index.php?title=User:Edward&diff=566&oldid=prevEdward: Update on projects2011-12-17T10:50:53Z<p>Update on projects</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en-GB">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 10:50, 17 December 2011</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l10">Line 10:</td>
<td colspan="2" class="diff-lineno">Line 10:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>My main crime against Specchumanity is the '''[http://sourceforge.net/projects/scrplus/ 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.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>My main crime against Specchumanity is the '''[http://sourceforge.net/projects/scrplus/ 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.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>I'm also working on a Spectrum emulator, '''[http://github.com/ec429/spiffy Spiffy]''', <del style="font-weight: bold; text-decoration: none;">but the Z80 core isn't finished yet, let alone peripherals</del>. 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.</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>I'm also working on a Spectrum emulator, '''[http://github.com/ec429/spiffy Spiffy]''', <ins style="font-weight: bold; text-decoration: none;">which as of December 2011 can emulate a 48 well enough to load games from tape and play them</ins>. 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 <ins style="font-weight: bold; text-decoration: none;">and accurate ULA behaviour (contention, floating bus, and all that)</ins>.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Another project is '''[http://github.com/ec429/bast 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".</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">There's also '''[http://github.com/ec429/blast blast]''', a curses-alike library, useful for making simple text-based interfaces. It can be used as an ASM library or a Spectranet module, and Z88DK C bindings are being developed by [[User:Guesser|Guesser]].</ins></div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> </div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Another project is '''[http://github.com/ec429/bast bast]''' <ins style="font-weight: bold; text-decoration: none;">(yes, the similar names are confusing)</ins>, 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".</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>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 '''[http://github.com/ec429/tnfuse tnfuse]'''.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>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 '''[http://github.com/ec429/tnfuse tnfuse]'''.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Then of course there's a load of non-Speccy-related stuff, most of which lives on my [http://github.com/ec429 github page] or dotted around SourceForge (where my username is Soundandfury); a comprehensive list may or may not exist somewhere on my website.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Then of course there's a load of non-Speccy-related stuff, most of which lives on my [http://github.com/ec429 github page] or dotted around SourceForge (where my username is Soundandfury); a comprehensive list may or may not exist somewhere on my website.</div></td></tr>
</table>Edwardhttps://sinclair.wiki.zxnet.co.uk/w/index.php?title=User:Edward&diff=454&oldid=prevEdward: irc channels2011-07-10T13:31:22Z<p>irc channels</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en-GB">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 13:31, 10 July 2011</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l3">Line 3:</td>
<td colspan="2" class="diff-lineno">Line 3:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>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).</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>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).</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>I hang around on #spin and #<del style="font-weight: bold; text-decoration: none;">speccy </del>on irc.coldfront.net; occasionally I post to WoS (as ''AY Chip'') or comp.sys.sinclair (as ''ec429'').</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>I hang around on #spin<ins style="font-weight: bold; text-decoration: none;">, #speccy, #zx </ins>and #<ins style="font-weight: bold; text-decoration: none;">polo </ins>on irc.coldfront.net; occasionally I post to WoS (as ''AY Chip'') or comp.sys.sinclair (as ''ec429'').</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>My location on the web isn't all that constant, but there's usually an up-to-date pointer at [http://jttlov.no-ip.org]. My website runs a homebrew webserver running on my laptop, so occasionally Bad Things may happen to it (it doesn't fall over ''much'').</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>My location on the web isn't all that constant, but there's usually an up-to-date pointer at [http://jttlov.no-ip.org]. My website runs a homebrew webserver running on my laptop, so occasionally Bad Things may happen to it (it doesn't fall over ''much'').</div></td></tr>
</table>Edwardhttps://sinclair.wiki.zxnet.co.uk/w/index.php?title=User:Edward&diff=244&oldid=prevEdward: User page... lot of projects, not much completed2011-02-09T06:40:17Z<p>User page... lot of projects, not much completed</p>
<p><b>New page</b></p><div>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.<br />
<br />
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).<br />
<br />
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'').<br />
<br />
My location on the web isn't all that constant, but there's usually an up-to-date pointer at [http://jttlov.no-ip.org]. My website runs a homebrew webserver running on my laptop, so occasionally Bad Things may happen to it (it doesn't fall over ''much'').<br />
<br />
== Things I'm responsible for ==<br />
My main crime against Specchumanity is the '''[http://sourceforge.net/projects/scrplus/ 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.<br />
<br />
I'm also working on a Spectrum emulator, '''[http://github.com/ec429/spiffy 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.<br />
<br />
Another project is '''[http://github.com/ec429/bast 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".<br />
<br />
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 '''[http://github.com/ec429/tnfuse tnfuse]'''.<br />
<br />
Then of course there's a load of non-Speccy-related stuff, most of which lives on my [http://github.com/ec429 github page] or dotted around SourceForge (where my username is Soundandfury); a comprehensive list may or may not exist somewhere on my website.</div>Edward