About Me
Michael Zucchi
B.E. (Comp. Sys. Eng.)
also known as Zed
to his mates & enemies!
< notzed at gmail >
< fosstodon.org/@notzed >
Panama Experiments
After a pretty long break I started playing with the OpenJDK
panama branch again - this is the in-development mechanism for
Java to be able to call C functions using metadata rather than
requiring a C binding library via JNI.
Whilst I get the impression the developers just aren't very
experienced with the way C works and keep trying to shoe-horn C
libraries into a fixed and awkward model of how they think they
should work, overall it's much improved than where it was last
time I looked. Of course it's a moving target still so even the
updates i've made will break shortly.
Apart from updating to changes in the panama api the main changes
have been working on a more flexible api compiler utilising
programmable templates, and at least attempting to move away from
write-once perl. It's surprising how much more work this took,
about 5x the effort and you don't seem to get a lot of benefit out
of it initially.
I also have a vulkan wrapper that uses the vulkan registry xml
document as the sole source. This allows it to better group
various features and automagically generate a nice object-oriented
api. One feature it has is auto-generating 'nice' constructors so
using the api is pretty much equivalent to the C api, it can also
auto-imply some parameters like array lengths. This was an
earlier iteration of the code so is definitely write-once code,
i'm considering trying to covnert this to use the templating
framework from the other generator but it's a huge amount of work.
I'm still working on how ResourceScopes can fit with the various
api's generated. In some cases it's an ok fit, in others it's has
a very large impedence mismatch which is difficult to resolve in a
satisfactory manner. It would be nice if there was something with
a bit more granular control available as once you start using
scopes you're forced to use it everywhere, or just not use it.
They map to problems where you have a bunch of resources you
allocate incrementally and then free together, but there are many
scenarios in C apis that just don't work like this at
all. I've had some discussions on the mailing lists but so
far i'm not terribly satisfied with the offered solutions, we'll
see I suppose.
The REAMDE
has a bit more info.
gcc export plugin
One tool that might be useful for others is the gcc plugin to
export all the available type information. It's a pretty messy
bit of code because it was mostly written by trial and error and
viewing the output of debug_tree(). I admit I didn't read the
gcc-internals documentation enough but it's pretty dense and hard
to follow, and gcc plugins are few and far between.
Getting the named parameters for function declarations was
particularly problematic - in some cases it's simple as you get
the parameters, then the function type itself. But an untyped
function pointer declared as a field, or as a parameter, comes to
the plugin in a different way, sometimes only being able to be
resolved after the plugin is finished. I still have some
'dangling' function parameters left over but they don't seem to be
important and even on a very complex set of header files like
ffmpeg all the fields and named parameters are being resolved
properly.
The output of the plugin is a perl hash which completely describes
all the structs, unions, function pointers, and enums found in the
header files.
Because #defines aren't available to gcc plugins a separate
programme is used to generate these from the output
of cpp
. Because #defines are just C it isn't trivial
to convert these to real values so the programme generates a C
file which is then compiled and executed to generate the perl
output. It uses some gcc features to create a pseudo-function
overloading to imply the type of #defines, and has flexible
filtering mechanisms to only grab those of interest. It's a bit
fragile but can be controlled to avoid some broken cases. Also
due to the need to execute the extraction step cross compiliation
will be difficult or impossible but that's a hurdle for later.
Have at it
I spent most of January working pretty solidly on this new
generator but i've not felt like working on it much for a little
while. The ResourceScope stuff is just about to be renamed (the
justification seems pretty weak to me but whatever) so it'll all
break but i'll patch it up when those changes settle down.
Browse
the source
code, the git checkout url
is https://code.zedzone.au/git/panamaz
.
I'm using the foreign-jextract
branch
of https://github.com/openjdk/panama-foreign.git
.
A year down
It's been a year since I decided to quit my job, well yesterday
was to the day. Also a Friday. At the time I put two weeks
notice in but they completely stopped communicating with me after
one week so I just gave up.
It's been a weird year. In some ways it seemed to drag on, in
other ways it seems to have gone fast - I guess in general i've
just lost track of time since i've got nothing in particular to
mark the days. I've spent way way too much time (and money) at
the pub, and it's getting to the point that I have to try to move
on. It's making me feel like a total loser just hanging around
mostly drinking by myself - or worse drinking with some random who
turns out to be a total fuckwit (last one started telling me
Hitler was only trying to protect his country ... sigh) or someone
who gets funny on booze. And somehow my circle of friends keeps
shrinking, I can probably count on one hand 'friends' i've seen in
the last 6 months, and I might not even need another hand for good
aquaintances. I suppose the thing which most upsets me is I just
don't have any other way to socialise, and although I don't mind a
good booze-up, it's just too bloody much doing it almost every
day. I try to think of things but even without COVID making a
mess of group activities I really just don't like doing organised
shit anyway. Maybe it's my lot in life to live alone until I die
- it's certainly been a consistent experience so far.
I cut back on the pub a lot this week anyway and spent a lot of
time hacking on zcl/foriegn-abi and playing games. Going through
God of War, although I don't really how it turned into an
open-world RPG - it's just not the same sort of game anymore and
i'm a bit lost and well, basically grinding to get enough gear to
progress. Sigh. I also got Gran Turismo Sport because it was on
sale - bloody 120GB download (what for? shitloads of crap videos
i don't give a fuck about?), I dunno it's 'ok' I guess and the Mt
Panorama circuit has a tigher (narrower, more realistic) feel to
it, but it just seems like i'm playing GT3 again. At least the
license tests are easier.
I've continued to work on fitness and general health - been on
some long rides (many 60km, one 80km) and even started going for a
swim at the beach but it's been cold and windy all week so that's
dropped off for now. Down to about 76Kg which is about 'ideal
weight' according to probably-questionable sites I can find on the
internet (my old scales were bunk but I think I was around 88Kg 2
years ago when i broke my hip). Of course I look pretty skinny
but people are just oversized these days. I started having
insomnia troubles so I'm trying to fix that using sleep
restriction (CBT-I) with ... mixed results so far. I'm mostly
struggling to stay up till midnight every night if i'm just at
home alone playing games on the couch or using the pc. And so if
I nod off for a bit around 10 or 11 it makes it harder to get to
sleep at 12. Oh well it's an ongoing effort and maybe it's
getting a bit better, it's one of those things that's hard to tell
because you can't remember much from lack of sleep.
Fish as anti-deppressant?
I had to go the GP for something else and mentioned the insomnia
and a lot of anxiety i've been having lately ... and it just
boiled down to psychologist or anti-depressants. Neither of those
worked for me in the past and the 6(?) pills I tried either did
nothing (with shitty side-effects) or made things worse, sometimes
much worse. I took the script because I couldn't remember if i'd
had that one before and lo and behond - yeah, and it was another
failure. So I decided to try something else - eat fish every day.
Dunno if it was just a placebo but it had an immediate effect,
literally the next day my mood felt better. Well not the mood
exactly but it's like a mild 'warm glow' that settled into my body
below my stomach which makes it easier to just feel 'good'. Sort
of what one would hope of taking an anti-depressant although none
I ever took had such a significant, lasting and well, completely
side-effect-free result as simply having a couple of sardines or
mackeral once a day.
It's been 5 or 6 weeks since I started and it's remained - and
already helped me weather some shitty situations. Improved my
skin a bit too, although I was hoping it would fix my cold hands
and feet too but it hasn't. It was such a foreign feeling to
start with, you know, not feeling miserable all the time.
Semi-Retirement
So I dunno if i'll work again - if i live cheaply and nothing
major changes in my life I can probably afford to not work.
But fuck it's boring. And lonely.
So many hours to fill every day and not much to fill it with. If
I walk to the pub I'll spend 2 hours walking but there's still so
much day to go. A decent ride might be 3 hours or 4 if i'm really
keen. Can only read or playstation so much. Gardning. And yeah
people get sick of hearing how boring it is when they're too busy
to get any time to themselves (maybe that's why my circle of
friends keeps shrinking!). I can do some coding and so on but I
dunno what's the point?
The loneliness is the real killer at the moment. Sigh. Well for
now i'm trying to fix things one at a time - physical health,
check, insomia, work in progress, then?
Guess i'll go for a ride to the beach today, although it's set to
be warm the water will probably be too cold for a dip but I might
get keen. YOLO and all that.
Life update
I'm still suffering pretty severe burnout from my last job -
nearly 9 months after quitting although I barely had any work
leading up to it either (due to covid/shceduling issues with the
job) so it feels somewhat longer. A few weeks ago a mate got me
to do a little bit of consulting work - fucking python of all
things - and while I didn't hate it and the pay was ok i'm not
sure I can be bothered even putting an invoice in because that
just means more paperwork and tax crap to deal with. I live a
rather modest life and can cruise on savings/investments basically
indefinitely at this point assuming no big life changes.
Life is otherwise mostly ok. Still rather lonely and
isolated on the whole, I suppose it's just in my nature. The only
"friends" I see regularly are bar staff and other hospitality
people i've gotten to known over the years by simply spending so
much time at pubs. It has it's moments I suppose but every now
and then the pathetic-hollowness of it all eats away at me and I
bottom out for a week or two before I get over myself and get back
to it.
My leg still hurts from the broken hip, mostly it seems to be
tendons in the knee which wilted during the recovery and are
difficult to strenghen up. I've been walking quite a bit the
whole time but it just wasn't enough it seems. As the weather is
slowly improving I've been working harder around the house and
going for half-decent rides on the bike (2-3 hours) and that seems
to finally be making a dent.
Could do to lose a couple of kilos, mostly just to drop an inch or
two of belly fat so I can wear my utility kilts again! I've been
working on it anyway and generally getting pretty fit.
The COVID-19 vaccine roll-out in Australia has been a total
shit-show. Every time I've tried to use the shitty web-site to
book an appointment it's been at least 2 months away - if there
were even any slots available. Plus you can't do it without a
mobile phone number which is something i'm loathe to give out. My
GP ran out of shots when I tried calling them last month. Another
GP wanted a health record from my other GP first (not meant to be
required for a vaccine) - i.e. two bloody appointments. Just got
sick of fucking around and noticed a chemist I go to was doing
shots so just walked in yesterday and got an AstraZeneca shot.
See why couldn't it have been that simple from the start? It's
not the 'preferred' one for someone my age but it's much less
anxiety on that than all the time i've wasted looking up shots
over the last few months. So far no real side-effects apart from
a sore arm.
I suppose the main problem is I just feel like i'm waiting to die
and have been for decades. Nothing has really changed for me
lifestyle wise since about uni - except now I don't have to work
and I can afford to drink out. I don't like sleeping in so get up
no problem but most things seem to be just going through the
motions filling time. Be it reading or playing games, house or
garden work, even just extending walks because I have time to
blow. It's not all bad I suppose but it wears you down
eventually. I'm spending much less time alone in an attempt to
address that part, but it has mixed results I suppose. One
side-effect of this is hobbies don't hold much appeal since they
generally require alone time. I had been reading reddit/news obsessively for months and decided to finally bin that a week ago. This just means even more time to fill ... i've been going to bed early a lot! I can't say it's particularly liberating or anything but it's one less pointless thing I was doing I guess.
Oh well, life goes on.
Summer Cruising aka Long Service Leave
The warm weather is winding down here but I did get a chance to
get to the beach a couple of times. The water was a little brisk
but on the refreshing end rather than numb appendages end of the
scale.
I didn't get there as much as one would like but then our summer
was a bit of a fizzer, I think we only had a couple of days over
40 and not many more over 35. After a dry winter we've had a
drier summer so the garden needed constant watering, the veggies
were a bit shit but i should be getting a decent crop of chillies
- the only problem is they're about 2 months too late and will
shortly stop growing but maybe some of the ones in the pots will
keep going for a bit longer if i can find a sunnier spot in the
garden.
Apart from that I'm just trying to enjoy my `long service leave'
of indeterminable length. I've had some jobs suggested to me but
it just turns my mind off, I feel really burnt out still. I've
been trying to get into various hobbies from photography to video
games to electronics, cooking, wood/metal work, sewing, reading
... but I just can't seem to get past a littler tinkering before
losing interest in most things. I guess I need some specific
projects, I should finish my workbench for one but it's a bit
tricky getting shit without a car.
Trying to keep active socially as well, spending too much time at
pubs and bars (which is getting a bit bloody expensive these days)
but also trying to visit friends more often. Cycling a lot more
than I have done in a long time although far short of where I've
been in the past. Walking quite a lot. I lost a little weight
and gained a lot of fitness at least. My broken hip hurts pretty
much constantly but it isn't enough to bother me most of the time
and whilst being active brings different pains it's better than
sitting for lengthy periods so that's another factor driving me
off my arse and potentially out of the house.
My "new" computer isn't doing much - it's just a web box most of
the time. I keep the kernel and Slackware-current updated and
have been keeping a loose eye on technology like Java but it's
more out of habit than anything. I'm not doing any hacking - i'm
still using playerz every day to play music but I was half-way
through some work on playlists when I stopped. I guess the
weather's been too good a lot of the time to waste it inside
anyway.
Quit my job!
Decided to finally pull the pin on work. It's been coming for
years but some issues regarding long service leave and some
minor conflicts with the new manager finally tipped me over.
It's uncanny just how much my mood has lifted since the decision
to leave - and is still up there a week later after a bit of a
hard slog working on handover material.
I have absolutely no plans! I've got savings enough to tide me
over for an extended period so I don't even have to rush to look
for work.
Not sure what else i'll get up to but i'm sure along the way i'll
have time to dabble in more Free Software than I have for a while
and maybe start interacting with the wider "commnity" more. The
music player continues to come along too and more on that later.
playerz: a music player
I got sick of mocp crashing every couple of days so i've finally
got the music player I was working on last year into a state good
enough to replace what I was using it for. It's still early alpha
software and I don't have a project page for it or any
documentation but the code is
at https://code.zedzone.au/.
It requires an old version
of libeze,
possibly the earliest that was checked in but I haven't checked.
Originally I was coding this for a beagleboard or the like where
the player would be used without a graphical interface. It would
automatically detect and scan new media and remember old media so
re-inserting media would be fast. I also experimented with a 'talking' menu driven by a remote (Mele airmouse). Since i've now moved my old pc
to under the TV i'm just targeting that now.
It consists of a bunch of services which comminucate using posix
message queues.
- music-player
Plays the music and allows navigation forward/reverse
through the (shuffled) playlist. A rudimentary 'talking menu'
has been implemented using espeak-ng but seems broken at the
moment.
ffmpeg is used to parse and decode the media and to perform
automatic volume leveling, and ALSA is used for audio output.
- disk-indexer
Recursively scans mounted disks (or directories) looking for
music files and gathers metadata from them and writes them to
an index. It handles re-scans efficiently by only scanning for
changes. It also generates the shuffle table across all files.
lmdb is used for the database backend.
- input-monitor
Monitors a raw input device for user input and sends
commands off to the player. It is hard-coded to the
Mele air-mouse but due to some issues with the USB stack
device naming in Linux it can't always find the mouse device
which is used for some of the controls.
- disk-monitor
Checks for removable media to become available or be removed
via raw kernel UEVENTs. New media is mounted read-only and
passed to the disk indexer for a (re)scan. Removed media is
marked as unavailable.
- audio-cmd
A command line tool to send various commands to the player
such as next or previous and so on.
mocp was having trouble with a collection of about 160K music
files I have, and the TUI was pretty slow every time I started it.
Indexing same said files takes about 20 minutes with playerz (I
dunno roughly on par with mocp?) but restarting the player is
basically instant.
I'm doing some web stuff for work at the moment so will probably
look at some web control stuff, although for now the Mele
air-mouse does most of what I need (skip to next song).
Even though i've done fuck all this year i'm getting a bit sick of
work. Nothing interesting to work on and the company I work for
has been trying to bilk me out of long service leave (13 weeks
paid time off) - something I should have had 5 years ago. Really
just want to retire but i'm a bit too young yet for that even if I
have really nothing to work for anymore.
Going nowhere
Still going though.
At some point a few months ago I almost completely lost interest
in coding - my new computer has just been collecting dust. This
is the first time i've turned it on in a couple of months, and all
I did at that time was upgrade the kernel. Same with this time
actually but I also upgraded netbeans to 12.0 because I wasn't
doing anything else.
Work is super-slow, partly due to COVID, partly due to timing with
respect to breaking my leg, partly the project i'm on and a good
dose of I don't give a fuck.
I've been spending a lot of time alone at home, again partly due
to COVID but also plenty of I don't give a fuck. Even on a cold
day if there's sun about sitting in the backyard with a book and
some (nettle) tea is preferrable to drinking beer alone in a cold
pub. I seem to feel the cold terribly these days. I'm getting
out when I feel the need to, the feeling comes and goes.
I've spent a bit of time playing games, mostly No Man's Sky and a
lot of Dreams. Once I got to >$U 4billion in NMS there doesn't
seem much point since I avoid the multiplayer but I still go poke
around every now and then to see what's cooking.
Dreams is a lot more interesting so i've spent a lot of time in
that. I worked on a few starts of games, but I find desiging
levels isn boring as fuck so I usually don't get past working out
the base gameplay and a demo level. Dreams logic is very limited
so it makes doing much with it a bit difficult, but just the
challenge of those restrictions is entertaining enough, at least
in measured doses. There's some really impressive stuff in there
though if you can find it. Should be interesting to see what the
PS5 can do with it, and if there's a new PSVR coming.
Till next time ...
New PC Gets a Box
I finally built a box for the
computer I
bought back in December.
I made it out of 12mm MDF. MDF really sucks, it's heavy and it's
fragile but its' cheap and available - here in Adelaide you
can't get much (for any decent price) and I don't have the
machinery to dress wood anyway.
Because you need to take the lid off to get to the insides you
can't just screw into the MDF directly, partly with 12mm board.
So you need to get some way of strengthening the wood.
The only part I could find locally was an M6 screw insert but it
requires a 9mm hole so it's too wide for the 12mm MDF. So I had
to create wooden lugs to mount these. I was going to try using
MDF but it just seemed like too much risk with such shitty wood
and it would make drilling the holes more difficult and require
more days for glue to set and so on. I used some salvaged scrap
and mounted them using 2 screws to the MDF (and glue).
I started with a 450mmx1800mm piece and used under half - I got
my brother to buy it when I was on crutches and I hadn't worked
out a design yet. I cut 2x280mm pieces, which I then cut a
150mm strip from each - these became the sides and top and
bottom. Then I cut one more 174mm strip which became the front
with a small piece of scrap. Basically the sides go the full
length of the case, and front end-caps everything.
So I didn't take any photos until I had the box nearly done so
I'll briefly describe the steps. First I cut all the pieces and
sanded down the edges. In particular the top and bottom pieces
had to be true and square on at least 3 sides. I worked out
where I was going to mount the top fans and cut the holes for
those using a jigsaw, a compass helps to centre the circle
properly.
I don't have any corner clamps so instead i used a square and a
square piece of wood (the 'scrap' from the cutting) to align one
piece at a time, glue and screw, clamp, and leave overnight to
set. I did that for the bottom first. Then I did it with the
top, also ensuring it was parallel to the bottom and square to
the front. And finally the front could just be screwed and
glued on. Fool: I didn't roughen up the flat of the MDF
enough so the glue isn't as strong as it should be - after all
the painting and sanding the rear top began to split off but
only a few mm worth (I'd kept the screws out while I was
painting).
I had intended to use some dowels, I even bought an overpriced
dowel jig for the purpose - but I bought the wrong sized dowels
(I think they were on the wrong hook in the shop and I didn't
check) and the dowel jig was absolute junk. I got one OK hole
and then it wouldn't sit in the right place. Helped by the
fucking shitty 'dowel drills' which I also bought which just
weren't straight. $130 down the drain basically. Fuck
Bunnings. Why does everything they sell have to be fucking
junk.
Once I had a box to work with I set about solving how to mount
the side panel. I cut a strip from a bit of old wood and then
made lugs out of them. For the threaded insert I did an 8.5mm
hole deep and a 9mm hole half way for an extra-snug fit. It was
tricky screwing them in straight. Idiot: I should've spent
more time squaring up the strips! Luckily it's good enough.
I decided to go with screws to mount the lugs, which I
countersunk. The screws are just at the limit of fitting
within the 12mm MDF but they seem OK. Later on I glued them
in place as well.
I drilled the holes in the front panel. First a couple by
measurements then I made a pin to drop into the inserts which
marked the spot. I should've got some dowel markers - should've
just got those instead of the shitty jig in the first place.
Mistakes were made, not the last. I countersunk them to match
the stainless steel bolts and then screwed it all together.
Then took a couple of afternoons to sand it all square.
Next was positioning and mounting. The hard constraint was at
the top - where the fans go. At the bottom the GPU and the lugs
collide so that set another hard limit, and the PSU just had go
to where it fit. I think I should've positioned the mounting
board a bit further toward the bottom (right) but it's no big
deal and something that isn't too difficult to change.
The base-plate was from an old PC I took apart years ago to build
a small case (which I never built), I'd chopped it up for an ITX
board with a single slot which just happened to be almost
exactly right but I did trim it a bit further to give more
options for the PSU. I just screwed it to the wood with tiny
screws.
The PSU was more work, I went through a couple of ideas but
settled on a pair of brackets. A small angle on the bottom and
a corner bracket for the top, leaving room for cables, airflow
and any front-panel stuff behind it. The power cord was quite a
problem, I had to hack away most of the cable support plastic
and even the front so the IEC plug pushed in far enough and the
wires didn't stick into the fan. At the time the modular power
cables from the output were pressing up against the GPU so I
couldn't move the PSU any further away from the fans - but with
some adjustments I made more room. So the PSU could potentially
be moved but I haven't done so and the IEC cable would still
need some hacking anyway.
It took me a while to work out how to create support for the PCI
bracket. A flat bit of metal? Some angle? The problem is that
the IO panel and the GPU and the rest of the design mean I can't
just use a piece of wood as the back plate as there isn't
enough support area or there's no way to then get the computer
together. And that means any PCI support wont be well supported
either. I toyed with using the PCI mounting plate from the
computer I'd chopped up but I couldn't quite work out a way to
mount it (actually in hindsight this is one reason the base
plate is where it is, it was just enough for 4 slots with the
board against the base). That probably would've worked but
instead I went with using a piece of square tubing. I cut a
slot out at the bottom of the tubing so that it slides onto the
end of the PCI bracket, and then I use another pair of lugs to
mount the bar to the case.
It's a bit tight and probably slightly out of position but it's
solid and supports the card well.
So I put it all together and started doing some heat testing. I
made some vents in the side panel based on the position of the
GPU and other constraints like the mounting lugs. The upper
vents align with the GPU vents on this particular GPU.
The idea is the bottom ones feed cold air to everything and the
higher ones can vent some GPU exhaust if they get hot. In
practice air just seems to come from all of them. My GPU fan
never goes above the bottom rate anyway, I don't play games so
it isn't doing much more than running the desktop now.
I normally run eco mode (65W) on the Ryzen 3900X, but I turned
that off to try it out. Running blender and the Mandelbrot
OpenCL stuff from the previous blog the CPU got up to about 81C
and the GPU in the 70s. There was a bit of a hot-spot near the
front end of the GPU but it didn't seem too bad.
On the other hand the cables were stuffed in pretty badly,
particularly behind the PSU and up against the GPU. So I worked
out a way to fold them and tie them up and it improved airflow
quite a bit. I also chopped up the HDD cable from the PSU and
soldered on one of the fans - this motherboard only has a single
fan header, and I got the PWM fans. It works better if they're
both on 'flat out' anyway - they're only low rpm fans and it
keeps the CPU cooler so it makes less noise. There's a shot
later with this one.
Painting. It sucks. You paint, you clean, you sand, you paint,
you clean, you sand. Makes a mess. Stinks. Expensive.
Actually before I painted it I detailed it.
- Added a 45° bevel to all the main edges. It's
simple, helps protect the edges and I think it looks nice. I
used a trimmer router for this.
- Added a smaller bevel to the case-side edges of the side
panel and the corresponding edges on the main box. To
protect the edges for a removable part but also to 'hide'
any small misalignment.
- Cleaned up the fan holes - made them round and square.
- Cleaned up the vent holes.
- Created a hole in the front for the power switch.
And I fucked it up quite badly. 1x coat of sanding sealer, 3x
white undercoats, and 3x enamel overcoats ... but the final
overcoat is full of dust and hair and bubbles and isn't even
enough. It could probably be fixed with a sand and recoat - but
I just gave up.
I worked out later at least one mistake I made, shaking up the
can rather than stirring it aerated the paint which came out
when I used a roller. Oops.
Before I painted it I decided to cut matching slots on the other
side panel, to help airflow a bit more but mostly for
aesthetics. And of course I totally fucked it up - I put the
upper slots in the wrong place because I measured from the
inside and not the outside. Fucking idiot! That really pissed
me off for days but what can you do eh? The base plate was
always going to cover some of the upper rear slot but I could've
cut some of it away, but I just gave up.
Here I've mounted the power button as well. I don't know what
to do for the button - it's a bit fiddly making anything that
will push onto it, but it works as a 'hidden push-button' hole in
the case anyway.
I decided I should probably cover the fans, don't want a stray
screw falling inside or something. I used some aluminium fly
wire.
Nearly finished, fans, motherboard, power supply. Here the
cables have been tidied up. The reset switch is just hanging
out the back for now.
And that big-arse GPU is in now too! After tidying up the cables there is ample room.
I also detailed the galvanised square tubing - I ran a wire
brush over it with the drill to give it a satin finish and then
put on a couple of coats of Penetrol. I haven't used it before
but it's supposed to be 'the shit' for a natural metal finish (I
got it for my kilt belt buckle but haven't used it yet). The
steel bar doubles as a mounting point for the magnetic antenna
that came with the motherboard.
Due to the issues mentioned earlier there's no rear panel yet.
Maybe i'll do some steel and attach to the bar or something. In
hindesight the case could've been another 15mm long so the bar
could be recessed ... but it's too late now (unless I get a
shorter GPU). The case could have been any depth!
Despite 24 hours drying in good weather the Penetrol and paint
were still a little tacky feeling (or rather, set but soft).
Because of this I only did up the screws lightly, but perhaps I
should've waited a few more days for the paints to harden more.
I also should have sanded down the internal surfaces where the
paint created a thicker edge too, already a couple of bits have
pulled off but they're inside.
That's it!
It is still on the dining table because my computer desk is occupied
with junk, my old Kaveri machine, and a giant old full-tower from work.
Copyright (C) 2019 Michael Zucchi, All Rights Reserved.
Powered by gcc & me!