<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title type="text">Void *</title>
  <id>/atom.xml</id>
  <updated>2026-04-30T14:22:00Z</updated>
  <link href="https://voidptr.org/" />
  <link href="https://voidptr.org/atom.xml" rel="self" />
  <author>
    <name>Lady Errant</name>
    <email>ladyerrant@voidptr.org</email>
  </author>
  <subtitle type="text">The website of an old burnout</subtitle>
  
  <entry>
    <title type="text">Solving hard problems</title>
    <id>/post/post9/</id>
    <updated>2026-04-30T14:22:00Z</updated>
    <published>2026-04-30T14:22:00Z</published>
    <link href="https://voidptr.org/post/post9/" />
    <author>
      <name>Lady Errant</name>
      <email>ladyerrant@voidptr.org</email>
    </author>
    <content type="html"><![CDATA[<p><a href="/assets/modem_board/DSC03918.JPG"><img src="/assets/modem_board/thumbnails/DSC03918.jpg" alt="Inside of my uConsole"></a></p>
<p>So I don&#x27;t carry a smartphone with me for a mixture of reasons. Privacy
obviously, I don&#x27;t think at this point that needs spelling out. Environmental
concerns are high up for me, though. Having to buy a new device every few years
is not environmentally friendly. When I went looking for an alternative I looked
at (and tried) a lot of things, but landed on a weird option. </p>
<p>The ClockworkPi uConsole looks cool. I get told it looks &quot;cyberpunk&quot; a lot.
Thats... nice, but not the point. It is all metal, made of modular boards and
has published schematics. It is powered by 2 18650 batteries and even has space
in the case for an expansion board you can buy or build yourself. Durability,
modularity, expandability. It is a really nice device. </p>
<p>This post isn&#x27;t about the uConsole itself, but about an addon I built for and
the challenges getting that addon working reliably. While ClockworkPi ships an
internal 4G modem for the uConsole, and while I was able to get my hands on one,
I wound up not using it. The T-Mobile 4G sunset is coming up next year. I don&#x27;t
like doing projects that only last a year or so, and getting the 4G modem
working reliably would be a project. Also, I needed the 2nd USB port on the
expansion connector exposed so I could connect my camera to it. </p>
<p>My solution was to get a 5G USB modem and use that velcro&#x27;d to the back of the
case. To do this, though, I wanted a USB port that I could turn on and off in
software. I don&#x27;t need the modem anywhere I have wifi. The first version of this
board was a bunch of parts hot glued to the blank 4G card that ships with the
uConsole. It worked... not well, but it proved out that the idea was feasible if
I could get past one error message.</p>
<p>[21351.442444] usb usb1-port1: disabled by hub (EMI?), re-enabling...</p>
<p>I would get runs of 10s of this message and afterword the USB hub on the
uConsole motherboard would be unstable. Some connected devices like the keyboard
would recover after a timeout, others (like the camera or my lapdock) would not
work again until a power cycle. Clearly something had happened to make the hub
unstable. Finding out what that was, and fixing it, took me down a months long
rabbit hole that I will now describe.</p>
<p>The first and most obvious problem was construction. The prototype was a mess of
wires, break out boards and hot glue. After the first tests I got to work
designing a proper PCB. It needed to be thin to fit into the uConole&#x27;s expansion
connector, so I use OSH Park&#x27;s 0.8mm 2oz process. That worked out great, the
boards fit perfectly. I kept the design simple, 90 ohm diff paris for the
external USB connector and camera and a TPS61023 breakout board to provide power
to the external USB. I added this because it will fall back to pass through mode
if the input is 5v, but boost if there is a dip. I had thought that a dip on the
supply going to the modem might account for the errors, so I wanted to make sure
that wasn&#x27;t the case. </p>
<p>The first board was better, I got fewer errors, but they did not go away. When
they happened I would still loose the camera, so the instability was still
there. I tried different USB-C cables connected to the modem but that wasn&#x27;t it.
Then I made a fateful discovery, if I connected the modem to the uConsole&#x27;s
USB-A port I still got the error. This ruled out my board, but not the modem or
the uConsole. If I connected the modem to another computer, though, I couldn&#x27;t
repoduce the error there. That pointed to the uConsole. </p>
<p>I spent a lot of time looking at the schematic. A lot of time. The problem
wasn&#x27;t obvious at all, but I did find it. The USB hub on the uConsle is a
GL850G. This chip has it&#x27;s own LDO for generating it 3.3v power rail from an
existing 5v rail. This is useful if it is being used an external hub, but for
some reason it is being powered that way on the uConsole even though the PMIC
generates a 3.3v rail. Worse, the 5v rail doesn&#x27;t have any dedicated capacitor
feeding that LDO. Any small dip on the rail will push the LDO out of regulation.
At first I experimented with added an 220uF cap to the 5v rail right at the hub.
This improved the situation a lot, I got fewer errors and they didn&#x27;t always
result in the hub becoming unstable. I thought I solved it, until eventually the
camera disappeared. </p>
<p>I knew I was on to something though, so I removed that mod and lifted pin 23 on
the hub (the 5V input) and powered the hub from the 3.3v rail generated by the
PMIC by connecting the supply side of C505 and C143 together. Thats actually a
really small run of magnet wire on top of the board. Again the situation
improved. I went all through SakruaCon with a working modem, but not a working
camera. It would still drop out. </p>
<p><a href="/assets/modem_board/DSC03919.JPG"><img src="/assets/modem_board/thumbnails/DSC03919.jpg" alt="3.3v rail fix"></a></p>
<p>Solving layered problems starts with figuring out that the problem is in fact
layered. Its easy to see the results and think the lack of progress is due to
not going far enough when instead the real problem is somewhere else entirely.
To be sure, the USB hub power was a problem and I encourage all uConsole owners
facing USB stability issues to make that mod. It was not, however, the only
problem. </p>
<p>I didn&#x27;t include an ESD diode pack on the initial design of my board. This was
an oversight due to rushing too much, but when I started on a redesign I added
one. ESD could definatly cause the USB hub to go unstable, and since this thing
lives it&#x27;s life in my purse or pocket its going to encounter static. I got this
new board in and to my surprise things got worse. It would work fine and then I
would get a raft of that same error. I was watching dmesg the other evening and
found the other culprit, if I flexed the connector on this new board just a
little it would produce errors. </p>
<p><a href="/assets/modem_board/DSC03921.JPG"><img src="/assets/modem_board/thumbnails/DSC03921.jpg" alt="Hard to solder little pins"></a></p>
<p>This may not have been a problem on the first PCB. These USB-C connectors are
hard to solder down with just an iron and hot air. I got another USB-C cable
that didn&#x27;t stick out from the case and have been testing with that for the last
3 days without issue. No error messages, no drop outs, camera has worked the
whole time. </p>
<p>This wasn&#x27;t one problem, it was multiple problems that all generated the same
error message. Ironically, EMI wasn&#x27;t even one of the problems even though the
kernel message hints at it. Working these kinds of problems its easy to be led
astray or get tunnel vision on one aspect of the problem an miss other factors
that might be leading to the fault. We have to step back and look at the whole
system periodically to regain the context the fault happens in. </p>
]]></content>
  </entry>
  
  <entry>
    <title type="text">Animated GIF badge</title>
    <id>/post/post8/</id>
    <updated>2026-04-22T14:22:00Z</updated>
    <published>2026-04-22T14:22:00Z</published>
    <link href="https://voidptr.org/post/post8/" />
    <author>
      <name>Lady Errant</name>
      <email>ladyerrant@voidptr.org</email>
    </author>
    <content type="html"><![CDATA[<p><a href="/assets/gifbadge.jpg"><img src="/assets/thumbnail/gifbadge.jpg" alt="The gif badge"></a></p>
<p>While we were at SakuraCon this year I saw some animated gif badges and
backpacks. Its a simple idea, you load animations on to them and they play while
hooked onto your backpack. I asked about them and found out that they don&#x27;t use
a microsd card, instead you have to use an app to upload pictures to them and
they only hold a handfull of images. Not having one of those I decided the best
option was to make my own badge that loaded images from a microsd card.</p>
<p>I went looking for parts initially with the intention of building the whole
thing myself. However, I quickly came across <a href="https://docs.waveshare.com/ESP32-S3-Touch-AMOLED-1.8">this Waveshare ESP32 AMOLED
display</a>. It has
everything I wanted to build myself onboard and even more. Waveshare dev boards
dont ship with batteries, but they did list the size of battery that would fit
in the case so I picked some of those up as well. </p>
<p>On the software front I went looking for a library to decode GIFs on esp32 and
stumbled across <a href="https://github.com/Glebka/esp32-animated-badge">this project</a>
that does almost everything I wanted and targets the waveshare hardware. Great
minds think alike I guess. There are some featues I want to add when I get time,
but for now it covers the main points. It plays gifs from a microsd card, has
playlist support, and can play one gif after the other. </p>
<p>With those two down there was one last hurdle. The gifs need to be unoptimized
and rotated for use on the device (I&#x27;m using it in a wide orientation). The
ESP32 doesn&#x27;t have enough RAM to handle unoptimized gifs. I can run the commands
easily enough to do that conversion, but my family is non-techinical. They
needed a simpler interface to do that (I made one for my husband and son). So I
whipped up this interface in a couple of hours that can take a video file or gif
and apply the correct conversions so that it will play correctly on the badge. I
called it <a href="https://git.sdf.org/errant/gifmaker">GifMaker</a>. </p>
<p>This was a fun little project that was helped along by the work of others. It
was really neat to see other people working on the same thing I was. I&#x27;m overall
really happy with the badge, it gets a little over two hours run time on a
charge. I might add shuffle mode, and maybe wifi image upload. We&#x27;ll see how my
free time shakes out.</p>
]]></content>
  </entry>
  
  <entry>
    <title type="text">Fixing an ADDS Viewpoint 3a</title>
    <id>/post/post7/</id>
    <updated>2026-03-15T14:22:00Z</updated>
    <published>2026-03-15T14:22:00Z</published>
    <link href="https://voidptr.org/post/post7/" />
    <author>
      <name>Lady Errant</name>
      <email>ladyerrant@voidptr.org</email>
    </author>
    <content type="html"><![CDATA[<p>So, my first computer came from a dumpster behdind a business somewhere in Noth
Texas. It was an Altos 580 and an ADDS Viewpoint 3a terminal. It ran CP&#x2F;M and
had a BASIC interpreter and a Pascal compiler. We didn&#x27;t have the money when I
was little to get an NES, but I really <em>really</em> wanted to play Super Mario
Brothers. So I set out on my first programming project. Armed with a book on
BASIC (the wrong flavor of BASIC, mind) from the library and my junk computer I
tried to write a version of Mario in ASCII for my 80x25 dumb terminal display. I
didn&#x27;t get far before I had to learn more and more advanced programming
techniques. That rabbit hole landed me where I am today, a Senior Embedded
Sys^H^H^H^H A Weirdo. I never actually finished that project. When the NES
eventually got cheap enough I got one, with the Mario&#x2F;Duck Hunt combo cartridge. </p>
<p>Running htop:</p>
<p><a href="/assets/terminal/terminal_top.jpg"><img src="/assets/terminal/thumbnails/terminal_top.jpg" alt="terminal_top.jpg"></a></p>
<p>I couldn&#x27;t keep that computer. We had to move various times and I had to pair
down my hoard of machines (garage sales in the late 80s and 90s were great) down
to just the most essential. I&#x27;ve looked now and then for Altos 580s and ADDS
Viewpoint terminals on the various auction sites, but never had much luck. The
Altos is unobtainum, and the ADDS terminals go for a lot. Until I saw one for a
price I could pay on Goodwill&#x27;s auction site. I managed to snag it and I will
say they did a great job shipping it. The protection for the CRT was quite good.
It gave me a cursor when I powered it up, but I couldn&#x27;t get it to respond to
serial data or to transmit. </p>
<p>Logging into the ICM&#x27;s vintage system menu:</p>
<p><a href="/assets/terminal/terminal_icm.jpg"><img src="/assets/terminal/thumbnails/terminal_icm.jpg" alt="terminal_icm.jpg"></a></p>
<p>The PCB inside was covered in bodge wires. I&#x27;m not actually sure whats going on
with it. It seems stuck on 110 baud. Thats lower than my USB to RS232 converters
will go, but at 300 baud you could at least see something happening. I started
gearing up to debug the board when a set of 4 PCBs for the Viewpoint 3a landed
on ebay. I snatched them up quick. Lo and behold the first one I tried worked. I
could receive, but not transmit. Turns out this keyboard is a Keytronics with
the dreaded foam and foil keypads. I got a set of replacements from TexElec.
These are not fun to replace, but the replacement pads are great quality. This
fixed the keyboard and now I was able to transmit and receive just fine. </p>
<p>I&#x27;m in</p>
<p><a href="/assets/terminal/terminal_nostromo.jpg"><img src="/assets/terminal/thumbnails/terminal_nostromo.jpg" alt="terminal_nostromo.jpg"></a></p>
<p>My ultimate goal is to build a homebrew Z80 CP&#x2F;M computer to run with this when
I take it to events. A replica of my original computing environment. Maybe one
day I&#x27;ll find another Altos 580, but they are frankly huge and I wouldn&#x27;t have
anywhere to put one right now. I might even try to finish that first project, an
ASCII version of SMB. Maybe just the first level. This terminal has enough
control codes to support curses well enough. Vim and htop run fine. Time will
tell.<br /></p>
<p>This website in lynx:</p>
<p><a href="/assets/terminal/terminal_voidptr.jpg"><img src="/assets/terminal/thumbnails/terminal_voidptr.jpg" alt="terminal_voidptr.jpg"></a></p>
]]></content>
  </entry>
  
  <entry>
    <title type="text">Fall ICF 2025: FINAL JUSTICE</title>
    <id>/post/post6/</id>
    <updated>2025-10-05T18:23:00Z</updated>
    <published>2025-10-05T18:23:00Z</published>
    <link href="https://voidptr.org/post/post6/" />
    <author>
      <name>Lady Errant</name>
      <email>ladyerrant@voidptr.org</email>
    </author>
    <content type="html"><![CDATA[<p>This is it. This was the last ICF. Its over. 
...
BECAUSE the next event is going to be <a href="https://vcfpnw.org">VCF PNW</a>!</p>
<p>It was time for the upgrade. Intraspace is a nice cozy venue, but we were
clearly maxing it out with the number of exhibits and visitors. </p>
<p>This year all photos were taken on a Sony FDMavica MVC-FD75. All images stored
to and retrieved from 3.5&quot; floppy disk. The setup this year was similar to last,
with the addidion of the PowerBook 2300c I restored.</p>
<p><a href="/assets/icf_fall_2025/MVC-004S.JPG"><img src="/assets/icf_fall_2025/MVC-004S.JPG" alt="MVC-004S.JPG"></a></p>
<p>The Atari needed a quick patch, Ive had trouble with the mini-din connector for
the RGB+S video, the wires will touch and I&#x27;ll loose a color channel. I need to
make a PCB for that, but time is the enemy. </p>
<p><a href="/assets/icf_fall_2025/MVC-007S.JPG"><img src="/assets/icf_fall_2025/MVC-007S.JPG" alt="MVC-007S.JPG"></a></p>
<p>I also had a little trouble with wifi on the 2300c. The wifi selector DA kept
locking up the system. I found if I disabled extensions at startup it was more
stable but it crashed once even then. I feel the call of MPW, maybe I&#x27;ll put
this bug on my list of projects. Still, I did get it on the network. </p>
<p><a href="/assets/icf_fall_2025/MVC-017S.JPG"><img src="/assets/icf_fall_2025/MVC-017S.JPG" alt="MVC-017S.JPG"></a>
<a href="/assets/icf_fall_2025/MVC-018S.JPG"><img src="/assets/icf_fall_2025/MVC-018S.JPG" alt="MVC-018S.JPG"></a></p>
<p>The Ultra 2 performed flawlessly and had several people logged in to it over the
network at once while I was watching The Matrix on it.</p>
<p><a href="/assets/icf_fall_2025/MVC-016S.JPG"><img src="/assets/icf_fall_2025/MVC-016S.JPG" alt="MVC-016S.JPG"></a></p>
<p>I also got career advice about becoming a DOS programmer which I promptly
ignored and went back to C on classic MacOS. </p>
<p><a href="/assets/icf_fall_2025/MVC-005S.JPG"><img src="/assets/icf_fall_2025/MVC-005S.JPG" alt="MVC-005S.JPG"></a></p>
<p>And someone brought a LISP machine. Space cadet keyboard and all. </p>
<p><a href="/assets/icf_fall_2025/MVC-011S_rotate.JPG"><img src="/assets/icf_fall_2025/MVC-011S_rotate.JPG" alt="MVC-011S_rotate.JPG"></a></p>
<p>Unfortunately it suffered a disk problem and wasn&#x27;t running for long, so I
didn&#x27;t get to play with it. Hopefully it will be back for VCF PNW. </p>
<p>I&#x27;m really excited to see this event grow. I had a ton of fun explaining my
computers to visitors and talking with others about their machines. Its great to
see how many people care about keeping these machines running and not just dead
objects in a museum. I think the modern web has a lot to relearn from the past
web and I&#x27;m glad we&#x27;re keeping that alive. </p>
]]></content>
  </entry>
  
  <entry>
    <title type="text">Spring ICF 2025</title>
    <id>/post/post5/</id>
    <updated>2025-03-25T18:23:00Z</updated>
    <published>2025-03-25T18:23:00Z</published>
    <link href="https://voidptr.org/post/post5/" />
    <author>
      <name>Lady Errant</name>
      <email>ladyerrant@voidptr.org</email>
    </author>
    <content type="html"><![CDATA[<p>Spring ICF has come and gone and it was a blast. The Ultra 2 and the Atari both
performed perfectly, no issues with either machine. There was a great mix of
exhibits, both computing and telecommunications related. The teletype near the
door was a big hit. Also, big shout out to VintageLink for the network service.
I was able to telnet from my Atari to my Ultra 2 which was pretty cool. I split
my table with the <a href="https://sea-rcs.org">Seattle Retro-Computing Society</a>, of 
which I am a member. I can&#x27;t wait for the Fall event and will let the pictures 
do the rest of the talking. </p>
<p>My machines at the table shared with SRCS:</p>
<p><a href="/assets/icf_spring_2025/20250322_174530.jpg"><img src="/assets/icf_spring_2025/thumbnails/20250322_174530.jpg" alt="20250322_174530.jpg"></a></p>
<p>FurryTel:</p>
<p><a href="/assets/icf_spring_2025/20250322_174519.jpg"><img src="/assets/icf_spring_2025/thumbnails/20250322_174519.jpg" alt="20250322_174519.jpg"></a>
<a href="/assets/icf_spring_2025/20250322_174518.jpg"><img src="/assets/icf_spring_2025/thumbnails/20250322_174518.jpg" alt="20250322_174518.jpg"></a></p>
<p>Project Ivy:</p>
<p><a href="/assets/icf_spring_2025/20250322_174534.jpg"><img src="/assets/icf_spring_2025/thumbnails/20250322_174534.jpg" alt="20250322_174534.jpg"></a></p>
<p>X Terminals hosted by a VAX:</p>
<p><a href="/assets/icf_spring_2025/20250322_174547.jpg"><img src="/assets/icf_spring_2025/thumbnails/20250322_174547.jpg" alt="20250322_174547.jpg"></a>
<a href="/assets/icf_spring_2025/20250323_154306.jpg"><img src="/assets/icf_spring_2025/thumbnails/20250323_154306.jpg" alt="20250323_154306.jpg"></a>
<a href="/assets/icf_spring_2025/20250323_154309.jpg"><img src="/assets/icf_spring_2025/thumbnails/20250323_154309.jpg" alt="20250323_154309.jpg"></a></p>
<p>Compu-Global-Hyper-Mega-Net:</p>
<p><a href="/assets/icf_spring_2025/20250322_174607.jpg"><img src="/assets/icf_spring_2025/thumbnails/20250322_174607.jpg" alt="20250322_174607.jpg"></a>
<a href="/assets/icf_spring_2025/20250323_114156.jpg"><img src="/assets/icf_spring_2025/thumbnails/20250323_114156.jpg" alt="20250323_114156.jpg"></a></p>
<p>VintageLink:</p>
<p><a href="/assets/icf_spring_2025/20250322_174623.jpg"><img src="/assets/icf_spring_2025/thumbnails/20250322_174623.jpg" alt="20250322_174623.jpg"></a></p>
<p>The SDF logo print hanging over my workbench:</p>
<p><a href="/assets/icf_spring_2025/20250323_192636.jpg"><img src="/assets/icf_spring_2025/thumbnails/20250323_192636.jpg" alt="20250323_192636.jpg"></a></p>
]]></content>
  </entry>
  
  <entry>
    <title type="text">Sun Ultra 2</title>
    <id>/post/post4/</id>
    <updated>2025-02-26T16:28:00Z</updated>
    <published>2025-02-26T16:28:00Z</published>
    <link href="https://voidptr.org/post/post4/" />
    <author>
      <name>Lady Errant</name>
      <email>ladyerrant@voidptr.org</email>
    </author>
    <content type="html"><![CDATA[<p>So I picked up a Sun Ultra 2. This was over Yule vacation, I was at RE-PC and
saw it sitting on the shelf. Two 300Mhz UltraSPARC II CPUs, 2gb of RAM and a
busted power supply. Reader, I could not say no. </p>
<p>Even though I&#x27;m a dyed-in-the-wool Linux user, I have a history with Sun
machines. I picked up a Sparc 20 back in college and even made a friend because
of it. I had various bits of Sun kit for a long time and ran Linux on most of
them. Life happened, I dont have any of that kit anymore. My first real industry
job was as a Solaris system administrator. I had one of the newer Sparcs for a
desktop (A 30 at first, I think, and then at 45 at the end) and had one of those
SunPCI cards for it. It was clear, even at the time, that Sun was on its way
out. PC architecture servers were eating up the market share of those old
dedicated UNIX machines. </p>
<p>Since the old Sparc workstations (the 1 through 20) were called pizza boxes due
to their shape, I&#x27;ve affectionately named this machine DeepDish. Its a double
height case in the same style as those so it seemed fitting. Its also a bit of a
Hitchhikers Guide reference. I bought all new caps for the PSU and replaced
them, but still couldnt get the supply to start up. One of the caps leaked
badly, and in a dense part of the board. Some component legs showed signs of
corrosion, and that can creep up and into the plastic package of the component
and eat it from the inside. I feel I can fix it with more time, but the
<a href="https://sdf.org/icf">ICF</a> is coming up and I have a long ways to go on this
machine so I got a replacement PSU on ebay. </p>
<p>The new PSU works and with that sorted I turned to cleanup. It was amazingly
dusty. After a good clean and a reseat of all cards I got a green power light on
the motherboard and diagnostic output from the serial port. It reports both CPUs
working and all RAM available, so thats a good sign. I picked up a Creator3D
card since this machine sports the Creator3D badge on the front. Thats where I&#x27;m
currently at, since I dont have the right kind of 13W3 adapter for it. Note to
others getting into Sun hardware, the UPA video cards use the SGI style DDC
pinout on their 13W3 ports, not the Sun standard. Who knows why. I got one of
those configurable 13W3 to VGA adapters with the dip switches to try and get
around the problem, I&#x27;ll post updates once thats in.</p>
]]></content>
  </entry>
  
  <entry>
    <title type="text">Keytari</title>
    <id>/post/post3/</id>
    <updated>2025-01-01T12:00:00Z</updated>
    <published>2025-01-01T12:00:00Z</published>
    <link href="https://voidptr.org/post/post3/" />
    <author>
      <name>Lady Errant</name>
      <email>ladyerrant@voidptr.org</email>
    </author>
    <content type="html"><![CDATA[<p>So, I had a lot of 8 bit computers growing up. I got them from garage sales at a
time when people were upgrading to PCs and selling their old machines for for
almost nothing. I did have a favorite, though. My Atari 800XL. I had a Commodore
64 and a CP&#x2F;M running Altos 580, but the Atari&#x27;s design just made so much sense
to me (and it looked cooler, sorry breadbin C64). </p>
<p>Life happens and I had to get rid of that machine in a move in the 90s. A few
years ago, though, I came across one with a 1050 drive for a reasonable price at
a retro gaming convention and grabbed it. Since then I&#x27;ve turned it into the
maximally upgraded example of an 800XL. Rapidus 65816 upgrade with 16mb of
SDRAM, Ultimate 1mb upgrade card, VBXL video upgrade, FujiNet and SIDE3 (kinda
wish I had gone with SIDE2 or an AVG cart, but it works). </p>
<p>That wasnt enough though. I had a very powerful 8&#x2F;16 bit machine now, but it sat
o my bench unused most of the time. It annoyed me and so I decided I would find
some way to put the machine to daily use. As a keyboard. Now, put the pitchforks
down, I would never harm my beloved 800XL by gutting it. Instead I came up with
a weird plan.</p>
<p>The 800XL has a FastBasic program running on it that captures keystrokes out of
the Pokey registers, adds the state of the right hand buttons and control&#x2F;shift,
and sends that as two bytes to my PC. On the PC is a python script that takes
the bytes in, uses a cofiguration file to decode them into PC keycodes and
injects them into the Linux uinput stack as keypresses. This is all enabled by
the FujiNet, which lets me open a TCP socket to my PC over wifi. Currently the
protocol itself has no encryption, but it is wrapped in the WPA2 encryption of
the wifi connection.</p>
<p>This setup is great, honestly, and I&#x27;ve been using it for months. There are a
few catches, though. Firstly, the Pokey only shows one keypress (and two
modifiers) at a time. No rollover. This makes the software unuseable for gaming.
Sorry die hard FPS players. Secondly, if you run a keyboard-heavy setup, you
might find the lack of modifiers limiting. I use sway for a compositor and I&#x27;ve
taken to using the right hand buttons as additional modifiers. Third, some
things dont seem to play nicely with uinput. Particularly old games emulated in
wine seem to have some kind of issue processing keystrokes this way. Sorry
Warhammer 40K: Dawn of War fans (myself included).</p>
<p>I&#x27;ve mentioned this setup to a few people in the local retrocomputing community
and have gotten some interest, so I&#x27;ll be publishing the code in the next day or
two (when I figure out where to host it) for others to use. </p>
]]></content>
  </entry>
  
  <entry>
    <title type="text">Thinking about my solar power setup</title>
    <id>/post/post2/</id>
    <updated>2023-03-13T12:00:00Z</updated>
    <published>2023-03-13T12:00:00Z</published>
    <link href="https://voidptr.org/post/post2/" />
    <author>
      <name>Lady Errant</name>
      <email>ladyerrant@voidptr.org</email>
    </author>
    <content type="html"><![CDATA[<p>For the past couple of years I&#x27;ve been powering my desk, bench and stereo from 4
100 watt solar panels. This project started off with just a 60 watt panel and
grew from there to include 2 charge controllers charging two separate banks of
batteries. One bank responsible for the router and server, one for my desk and
bench. In North Texas there have only been a few weeks where its been cloudy for
so long that I&#x27;ve run out of power and overall I&#x27;d call it successful. </p>
<p>Doing this has definitely changed how I approach computing. Starting out I had a
laptop, a couple of older monitors and several ARM Linux boards acting as
servers for various locally hosted services. Now I use three Android devices as
my computers, and the servers have been reduced down to one and all of the
locally hosted services are gone with the exception of Home Assistant. </p>
<p>A big eye opener was when I spun up a locally hosted Pleroma instance and tried
to run it from solar power. One cloudy day was all it took for my 1.2 KWH of
battery to be almost completely empty. While I understand the push on the
privacy side to move to self hosted web applications, I feel like its not
practical from an energy perspective. Beyond that there are discussions about
security and abelism that aren&#x27;t happening as much as they need to. </p>
<p>I&#x27;ve moved to as much of a &quot;mesh&quot; infrastructure as I can as an alternative. My
git repositories are hosted on a folder that gets synced to my devices using
syncthing, negating the need for a service like Gitea to be running. I likewise
use DecSync to sync my contacts and calendars to other devices. While fine in
those applications I know from experience that messaging&#x2F;microblogging isn&#x27;t
really feasible in a mesh architecture. Even if we had reliable and well
established protocols to handle the data, we would still have to find some way
to deal with the energy requirements of each node processing all of that data. </p>
<p>Looking back its been interesting to see how I&#x27;ve adapted to use as little
energy as possible in ways I wouldn&#x27;t have considered before. I feel like
practical experience is an overlooked way of solving engineering problems. It
will be interesting to see how I need to adapt when I move to a less sunny
climate.</p>
]]></content>
  </entry>
  
  <entry>
    <title type="text">Yuri Manga Reviews - Vampeerz Vol. 1 and 2</title>
    <id>/post/post1/</id>
    <updated>2023-03-10T12:00:00Z</updated>
    <published>2023-03-10T12:00:00Z</published>
    <link href="https://voidptr.org/post/post1/" />
    <author>
      <name>Lady Errant</name>
      <email>ladyerrant@voidptr.org</email>
    </author>
    <content type="html"><![CDATA[<p>So, the cover didn&#x27;t really catch my eye but I&#x27;m running Kobo out of new yuri
manga so I decided to grab it. Vampires aren&#x27;t really my cup of coffee, anything
focused on them tends to be repetitive of a handful of themes. Immortality,
redeemable-bad-boy-syndrome, pointless mysticism and the like. This is to say
that going in I was biased against the work at the outset, but I&#x27;ve already read
&quot;I can believe I slept with you&quot; twice and thought I should read something else
before I go for round three.</p>
<p>It only took about 10 pages to win me over. First off, the cover does not do the
art justice. Where I went in expecting a predictable and cookie cutter style, I
found the characters to be well defined and possessing a wide range of
expression.  The vampiric tropes aren&#x27;t present for the most part, no bursting
into flames in the sun, no garlic issues, and not supernatural. They don&#x27;t even
like being called vampires. Aria, the vampire love interest, isn&#x27;t dark or
brooding. She is revealed to be in the range of a hundred or more years old and
seemed to have some kind of relationship with the protagonist, Ichika&#x27;s,
grandmother. </p>
<p>What really won me over was the depiction of Ichika&#x27;s interest in Aria. A lot of
otherwise good Yuri manga can&#x27;t seem to grapple with wanting to portray a
lesbian relationship positively while also acknowledging that this isn&#x27;t
currently seen as normal by a lot of people. Some just don&#x27;t ever depict any
kind of pushback whatsoever which leads to a story that seems too much a
fantasy. Some spend the whole story overcoming that pushback to then come to a
screeching halt before any actual relationship develops. Vampeerz does not do
this, Ichika recognizes that there will be pushback but decides her new love for
Aria is too strong and she just leans in to it. </p>
<p>Another unexpected highlight is Sakuya, Aria&#x27;s mother. Anyone who knows me will
know that I love characters that are unabashedly open about their desires, and
Sakuya is just that. She winds up as the school nurse, and in a hilarious scene
that has Ichika and Aria going to the nurse Aria has to stop Ichika from seeing
into the room because her mother has her legs spread, feet on the desk, drunk
and looking at her laptop. I&#x27;m positive the implication was that she got caught
masturbating and I genuinely laughed out loud.</p>
<p>I want more, the story is just getting started by the end of the second volume
and I feel like its set up a great cast and premise. Depressingly I noted that
the second volume was published in December of 2022 so I&#x27;m hoping this series
doesn&#x27;t just fade away.</p>
]]></content>
  </entry>
  
</feed>
