About Me
Michael Zucchi
B.E. (Comp. Sys. Eng.)
also known as Zed
to his mates & enemies!
< notzed at gmail >
< fosstodon.org/@notzed >
Woof
Well my beagleboards arrived. And i've spent the last couple of days getting them going. Ugh. Actually it arrived about midday yesterday - but it seems like a couple of days already.
I got the serial console going pretty easily and after a bit of a false start with a dodgy SD card I got it booting reliably. But I couldn't for the life of me get the damn video working all day yesterday and most of today. The problem is the video format option has changed every kernel revision, so it took me some time to track down the right one. It didn't help that I only had cables to hook it up to my TV which is a bit pickier about what it will accept. Although I finally got it working - it was off the screen and not very usable though - I went and got a dvi-d cable today so it's now plugged into my old monitor. The computer shop also had a second hand usb 100mbit ethernet adaptor for only $5 which saved a longer trip or unnecessary spending.
Tiny tiny thing, lost in wires and crap on the desk.
I also tried getting the cross development environment up. Sigh. Another stupid build system (it's written in python ...) to deal with, and it builds a whole distribution which isn't really what I wanted at this point. And it failed part way though building it's 3000 'steps'. Well I suppose i'll keep trying but i'm in no rush right now. The angstrom distro seems a bit flakey too - doesn't want to mount any of the usb drives I have. I've had some usb issues - if it gets particularly busy, usb just drops out and needs a reset to fix - appears to be some hardware bug with the OMAP itself :-/ Otherwise it's kind of neat. Not the snappiest thing running X or firefox, but it works - powering off a usb port with no cooling required. Feels similar to ps3-linux, although mplayer is pretty slow (then again, it's using 1/600th the power!).
Had a bit of a turn with my main box too - I had to reboot it since I stole the dvi-d port on my monitor for the bb and it wouldn't turn on the vga without it (or at least, it was the easiest way). After that it wouldn't let me log in - orbit issues. Turned out all the orbit directories in /tmp wouldn't go away, infact the directory wouldn't list properly and only some files would delete. Hrm, I thought jfs would be more reliable than that. A forced fsck fixed it, and it deleted /tmp altogether.
And I hurt my bloody foot last week. Not exactly sure what I did to make it happen but best I can work out is that I ended up with tendinitis. Sore as buggery for a few days - but I had things to do including riding around and walking around shops all day last thursday and I didn't let a little pain stop that. But since after a whole week it wasn't getting better I thought i'd better look up on the internet and find out what I had. After the last couple of days of resting a lot more seriously it seems to have gotten a lot better. I'm still treating it gently but it was ok enough to ride the 300m to the computer shop and back and limp inside.
Total success
Well on Friday I got my Chef at last, so apart from making some bread (which didn't really work out - insufficient volume to mix properly, i'll try that again today) and some biscuits I thought i'd try something a bit more ambitious, making pizza.
Hmm, yummo. I didn't have much in the fridge, but I managed ... anchovies, capers, smoky bacon, onion, capsicum, cheddar cheese all on a home-made sauce (some garlic, oregano, and a couple of tins of tomatoes). The strong flavour of the sauce made a good base, and pretty much everything else added up to a very nice pizza with a particularly strong flavour. I put some wholemeal flour into the dough too which added a nice texture and flavour too.
And I just got a shot of the finished result while there was still some left.
Bit easier than I thought - the dough making is easier than making bread since you only have to let it rise once and it isn't so picky about getting the structure right. Still took a while but you could probably streamline the effort to speed it up, and there's a few things you can do in parallel, and/or even do offline by freezing partial results.
Partial success
I've been meaning to for a while - with all this time lately I certainly have the opportunity for once - to make a lasagne.
Using a pasta machine to make the sheets of course. I used a hand mincer to make the mince too. Those things are surprisingly hard to find these days. Perhaps also surprising is that even using the cheapest meat I can find it makes probably the nicest mince I've cooked. Bit of a pain cleaning it though.
So the result. Tasted very nice, but a little on the dry side. Since I used fresh pasta I figured it didn't need cooking separately. I was half right. It did cook ok in the oven, but since I'd reduced the sauce a bit on purpose -- I wasn't sure how dry it should be -- it ended up a bit dry. I was also a little short on sauce so the penultimate layer was just bacon instead, which helped dry it out, and I think I had too much pasta to sauce. Next time I wont cook the sauce so long, and have more of it (or make a thinner dish).
Spring
First day of calendar spring. Not very sprung but I suppose there's a bit of sun out there.
Well as seems to be the case lately it's been another long lull between posts. I've been busy just 'bumming around the house' for the most part, although I've also got into a habit of spending money. Ordered a high-spec Kenwood Chef on the internet - I have a cheap food processor but it doesn't really mix properly and wont knead dough. But unfortunately it's still in the queue after a couple of weeks (from supplier). I tried buying locally but nobody sold the model I was after around here, plenty of places sell the Kitchen-Aid stuff but if i'm going to spend that much money I may as well go the whole hog. I go through spurts of cooking so it will be nice to have some decent gear.
Also just ordered a couple beagle boards. With Sony dropping the Other OS support in the new PS3's, I think that journey may as well come to a conclusion, at least for the time being. Not that I've been inspired to do any programming whatsoever, and they may just collect dust, but I'm hoping I can come up with something to put on them. I wonder which order will arrive first.
Last week I got my hands dirty converting a large coffee table with small drawers into a large coffee table/trunk. What was surprising is the whole thing is put together with only nails! Not even glue! Well it made it easy to disassemble the bits I needed to. I didn't need any extra timber as I re-used bits from inside it, although it could probably use a ply floor for strength and aesthetic appeal.
I took the top off, which already had a splitting join in it about half way across, used the drawer rails to make a spline across the middle and attached large triangle gate hinges to the that and the tops.
Added in some battens and bobs you're uncle. Actually it was a surprising amount of work, considering I haven't done any woodwork for ages and chiseled out the hinge rebates by hand. It's a bit rough -- the chisel wasn't too sharp and slipped some -- and unfinished, but I think I did an ok enough job with some of it. I'm sure glad I have a drill I can use to put screws in - there's over 70 in it now.
Considering the table is always covered in junk it may not be the wisest conversion ever, but it sure has a hell of a lot more room for storing crap now. So now i've been thinking about other woodworking stuff to do and other tools to buy - like a router which would've made the rebates a cinch - unfortunately I have no workshop, garage or even a gated car-port so I might have to hold back on that. If I ever get my retaining wall and paving done I'll have a deck to do at least.
I also found some interesting looking indoor plants and got some nice large pots for them - I have some other indoor plants but they're piddly little things or look like rubbish. I have some seedlings going early too - normally I'm months late with those. Trying to add some life to my herb pots too, and a little more work on the very slow process of creating a thyme lawn in the front of the house. And I think I finally got the ants nest out of the potted lemon tree. I have so much 'real' work to do out the back of my house it isn't funny but the weather and my apathy is holding me back on getting into it so i just keep poking around at the edges.
And so it goes ...
... and so on it goes ...
3 weeks of idleness. Actually I've been busier than I have been for a while. All sorts of stuff. Pruning trees, spraying weeds, new computer, installing various operating systems, cleaning, cooking, eating. Getting fat(ter).
Well. I made some pasta by hand, and liked it so much I bought a machine to help. Not that it really makes it any easier to make, it does however make the product a bit more consistent.
I found a shop that sells my new-favourite super-hot-sauce.
I recovered my rear speaker drivers from being repaired, and wired them up. They'd been in the shop for nearly 6 months(!).
I installed a couple of desks I acquired from work, from my very generous boss. And the bar fridge.
Bought the previously mentioned 'new computer'.
Tried lots of operating systems. Solaris (hence to be known as 'f*n slowaris', Arch-linux 'it's just too much effort, and i couldn't get X to work', gentoo 'it's just too much work/waiting around', and finally settled on GnewSense - it's an awful lot prettier than ubuntu, and it comes with Emacs AND a f*n compiler. I also had a good look at haiku ... hmm, interesting. It inspired me to revisit my own 'os', although all I managed was to recompile it on the new machine.
Also looked at mythtv. I have an old PCI card that does analogue TV capture I thought i'd use as a test. mythtv is a weird application. Anyway, managed to get it build from source - although for some reason, initially it would only run remotely* (* for some reason, now it also runs locally and no longer aborts with an X error). I also tried getting some other capture programme but unfortunately only mythtv managed to keep audio/video sync. Also unfortunately - recording and viewing seems to crash my box hard once in a while (the dreaded blinky keyboard L.E.D.'s.) - so I caved in an ordered a USB digital tuner unit.
Hmm, what else. Baked an apple cake. First recipe I found on the internet. Apart from the cooking time, which was wildly underestimated, it produced a rather decent result.
Oh, and pruned a tree out the back. Made a big mess of it but I think that was what was needed for it. It'll grow back. If the weather keeps improving like it had been for the last few days I might even manage to get back out there and clean it up ... and then prune the mandarin tree as well.
Winding up
Well I've been busy winding up the project I've been working on so haven't had much time to work on much else. And we've had a cold spell which has slowed down the enthusiasm to jump out of bed and start coding too ...
Hmm, so Google has finally announced it's `own' OS. Well, it isn't really, it's more like it's own `desktop environment', since they're just going to use a linux kernel, and presumably some sort of GNU or similar user-land, although much of it wouldn't be necessary if you're only running one application. Seems to be a bit of an overbloan buzz in the press - it isn't like they're the first to come up with their own linux-based distro.
Still, I do see some potential positives to come out of it for the free software world. For one, it will be interesting to see the notion of a 'desktop environment' completely re-done in a few months - rather than the years it's taken GNOME and KDE to get to their current state (to give them credit they did start with nothing). And it'll give the UI zealots another interface to clone; and perhaps it'll be better than the shit they've been cloning for the last 10 years.
Then again, even with a fast javascript compiler and HTML5, browser applications are still pretty much going to `suck'. Relying on faster computers to hide the problem is terribly inefficient. And in-fact working toward that whole network-based remote-terminal interface will look dated when the machine in your hand will fast enough and have enough memory to run real software whilst keeping your data local and private.
Another cell tutorial
Just uploaded another Cell tutorial ... they've just about come to an end, and although there's probably things I could write about, the urge to do it only comes in spurts. I just introduce an absolutely bare minimum library for accessing the ps3 frame-buffer.
And otherwise ... I had some strange thought at the pub one night that I should 'write a game', and unfortunately sobering up didn't dispel such a silly idea (it's not like I don't already have plenty of other ideas floating around to keep me busy). A mate of mine has wanted to write one from before I met him (damn, was it already 15 years ago), so I asked him to join me, and maybe we'll get somewhere this time. Perhaps - he's a bit of a rabid Ninty fan (which I am not) so it may not end up something I'd play; but i'm not particularly worried about what comes out. I've never written one either, so it's the journey and not the outcome that counts. It's a whole new set of basically unfamiliar problems so it's pretty much starting from scratch.
Yawn.
Too damn tired, all the late nights have caught up with me. I don't think the uncounted beers at the pub last night helped either.
After the last post I mucked about with a couple of implementations of 'job queues' on the Cell. I wrote the whole lot up before testing on real hardware - and thought i'd really messed one up. But it turns out it was salvageable and i'd only made a small mistake. For the simple 1-PPU-writer-only-SPU-reader queue I can send about 1.3m 'jobs' to an SPU per second (the 128 byte `jobs' are sent one way and once received, simply marked as 'done') for a single SPU and about 1m jobs/sec when all 6 are used. Which seems reasonable scalability; the contention isn't getting in the way too much. For the more complex any-writer-any-reader queue (only being used with the same ppu-writer-n-spu-reader test driver), it drops down to about 1m/s for 1 SPU and 750K/s for all 6. Which could probably be improved - but the jobs aren't actually doing anything so creating artificially high contention anyway.
They seem to be stable and reliable, no races or deadlocks.
I'll keep poking to see if I can improve them.
Copyright (C) 2019 Michael Zucchi, All Rights Reserved.
Powered by gcc & me!