I was looking at some MP3s that had been produced by Windows Media Player
today. I'm a little surprised. Despite being only ID3v2.3, the frames do
appear to be used correctly - unlike iTunes. The tagging appears to give
correct PRIV frames for the frames which are for WMP only and may be binary.
Ooh! I realised I used the wrong word last night. I knew it was wrong, but
I couldn't remember the right one. I didn't quite mean 'agitated', I think
I wanted something closer to 'anxious'. And not just because I want to use
a word that's got an 'x' that sounds nothing like an 'x' . Or maybe
I just mean both. Who knows ? Certainly not me and it's me that's doing the
feeling. Bah.
It's raining and windy out there again, and I don't know why but it just
makes me very agitated. I'm certain I've said it before, but it does and
I'm not entirely sure why it should.
We went to the Zoo today. We got to see lots of animals. I liked the tigers.
(intentionally written like a young person, honest ).
I spent ages last night writing myself some notes because I couldn't sleep.
I ought to review them and see if they make any sense.
Julian goes home tomorrow.
Oh, and I put together my little skeleton model today, too. He's cute.
If I find myself saying 'I don't see how that can possibly work' one more
time I may just... well, tell myself off.
RipIT 3.4 (and probably RipIT 3.5) is generating invalid CDDB DISCID
values. This means that the DISCIDs it is submitting to databases are
incorrect and won't be found by any other programs. How can I be so
certain ? Well, the IDs end in huge numbers (eg hex F1) when there are
only a small number of tracks on the disc (eg decimal 15). The last
two digits of the ID gives the number of tracks, so it should never
disagree with the rest of the file. Only it does, and it seems to be
in such a way that the value is negative (when treated as a byte),
so I believe it's a coding error.
It's very important to remember that double-clicking on an entry in the
address book on Skype calls the number, rather than opening a message
window. Very important.
We went out for a walk today in the forest, just for a little way. That
was quite nice. I got some Cashews as one of my presents. We played Julian's
'Scene It' game, and the 'Guiness Music Quiz' DVD this evening. Julian won
the former, and mum and I won the latter.
I've been playing with my music quiz over the last couple of evenings and
it's reminded me of a lot of fun tracks that I'd not listened to in ages.
Oh, yes, we watched Christmas
Doctor Who (2005, BBC One)Action and Adventure/Science-FictionThe Doctor looks and seems human. He's handsome, witty, and could be mistaken for just another man in the street. But the Doctor is a Time Lord: a 900 year old alien with 2 hearts, part of a gifted civilization who mastered time travel. The Doctor saves planets for a living - more of a hobby actually, and he's very, very good at it. He's saved us from alien menaces and evil from before time began - but just who is he?Doctor Who episode "Runaway Bride" and
the Chrismas
My Family (2000, BBC One)ComedyMy Family is about the life of the Harpers, a fictional middle-class English family, who live in 78 Lancaster Road, Chiswick, London. Ben, a dentist, and Susan, a tour guide who later works for an art gallery, have three children, Nick, Janey and Michael, all of whom cause problems in their own way. While Susan is a control freak, Ben prefers to leave the children to it and tries not to get involved.My Family. My Family was... well, the Christmas ones
tend to be a let down. I'm not sure whether it's that the set ups are so
obvious or that I'm expecting more than we get. Doctor Who might have been
better, but the 'incidental' music wasn't quite so 'incidental' as
'relentless'. There didn't seem to be any break from it and it was always
so loud that I lost some of the dialogue. Maybe I'm just old. Story-wise...
it was ok. Nothing special, I wasn't bored, but it wasn't some of the best.
Some bits were very obvious, some bits were badly explained. Fine for
Christmas day, though.
And there was a
Torchwood (2006, Starz!)Action and Adventure/Drama/Science-FictionCaptain Jack Harkness is a man from the 51st century trapped in the past, finding himself drawn into alien conspiracies as he works for Torchwood. Torchwood is a top secret British government agency whose job it is to investigate alien goings on in the world, and to act as mankind's best interest and last hope for defence, if needed.Torchwood last night which was sort of "Fight Club (1999)Crime, Drama, Thriller A lonely, isolated thirty-something young professional seeks an escape from his mundane existence with the help of a devious soap salesman. They find their release from the prison of reality through underground fight clubs, where men can be what the world now denies them. Their boxing matches and harmless pranks soon lead to an out-of-control spiral towards oblivion.Fight Club"
. I'm
still not sure where to put Torchwood.
My left eye's still tired today.
Stay Together , by
Suede has such a gorgeous introduction.
It's now the early hours of Christmas morning, and I should be trying to
sleep. Oh well.
My left eye has been very tired today and tends to be twinging. It's
very frustrating,
Well this is strange. I think I've found a bug in Opera. It appears that src
attribute URLs in the <embed> element can't be relative. They'll be
treated as absolute. At least, the problem doesn't occur with IE7 and my
understanding is that the URL should be resolved prior to being passed to
the plugin. No, that's not quite it. A src='/excerpt.mp3' is
resolved to be http://excerpt.mp3 from the root of my server
whereas a src='excerpt.mp3' from the same place is resolved to
http://buttercup:2345/excerpt.mp3 which is correct. Examined
by using WMP as the embedded object.
And there's some sort of oddity by either Internet Explorer or Windows Media
Player whereby the src requested will have URL encoding removed from it.
That is, if you use '/hello?file=this%26that' it will result in
a GET request for '/hello?file=this&that'. Obviously this is not
what you asked for and has a completely different meaning.
On a whim I searched for the phrase 'Know what you want', and came across Distant Sun , by
Crowded House .
I hadn't really noticed the line in it
before, possibly because I tend to listen to
Crowded House as a background
thing, or just because the chorus is more memorable. Hey, it's strange
what's in the things that you think you know.
Damn; my comments form on the diary has been broken for a little bit. Looks
like my changes to the HTTP server code got a bit confused and masked the
body of the request. Oh well.
I like my mobile phone. It's great. It makes phone calls and it sends SMSs.
It doesn't do a whole lot else, which is just what I want. Only it doesn't
support the 'long messages' thing. That is, I believe, when the message is
longer than a single SMS and sent in multiple parts. Each sent message is
itself is flagged as being part of a multi-part set and must be reassembled
at the phone. Now, if it was me designing the protocol, I'd use a flag in
the headers to indicate that the message was part of a set. And if that was
the case, the phone software would spot the flag it didn't understand and
present the message as just <Data>, rather than trying to display content
that it didn't understand. At least, that's how I think it works. If I
was really that interested, I'd look at the GSM specs and find out, but I've
not really got much need to do so.
So I've received a message today which I can't read because it's one of
these 'long messages'. Whenever I get those from people it's always
important. Damn, damn, damn.
Repeat many times - "this is not the end of the world".
I went to visit Farren yesterday. We were meant to have been going out
shopping and stuff, but she's ill and is still getting over her broken
foot, so instead I just visited her. It was really strange seeing bits
of Downham again.
I had a dream about Caroline last night which was less memorable than
most. I know that I did something good, but that I felt sad because of
it. I know that she was very unhappy but I don't know why.
I've been really tired today. Just tired, unable to concentrate and
headachey. I thought it was just because I slept badly and hadn't had
much to eat, but I had some lunch and then fell asleep for a few hours
and I still don't feel much better.
I'd really like to know why I only recognise Important things so far after
the event. Bah.
For some reason I find it very hard to say what it is that I actually do. Or
rather, the things that I have done which are important. I tried a little
while back in some jotted notes, but there's nothing specific in there. I'm
not sure it's because I'm unfocused - although it might look like that,
especially from the number of unfinished projects. (That said, someone I was
talking to earlier today suggested that they hadn't actually had a project
that they'd seen to completion since around 2000, which is probably a very
frustrating task)
I tried to explain to someone else, only last week, that I don't think that
you should advertise yourself. I guess that's why I didn't like doing
comp.sys.acorn.announce postings as well . I don't like doing the
'look at me and what I've done'. As I say this, I think back to the 12
December 'hey look at all this funky stuff I've done' article and wonder if
I can say that about myself. Maybe I'm selective in these things.
It all comes down to the fact that you will always think you are good, so
anything you have to say about yourself will obviously be biased. The only
way that anyone can judge the worth of something is by secondary sources.
For software, that means that the company's advertisement means nothing, but
a recommendation by a trusted group is valuable. For people, it means that
if I say I'm wonderful and great, and I can could to a million without
moving my lips, that really doesn't mean that much. Anyone can say that, so
surely it's redundant to do so ? What counts is what others, or possibly
your actions, say about you.
Your actions ?
A little while ago I wrote something about 'waiting'. There's a whole
discussion involved in that, but I have the feeling that I've just stumbled
on to an conclusion to that discussion whilst thinking about this. Maybe.
A few days ago I flipped channels and saw part of "The Search For Spock (1984)Action, Adventure, Sci-Fi, Thriller Picking up where exactly where Star Trek II left off, the Enterprise and crew are returning to port for some essential repairs to their ship. When they arrive, they are shocked to discover the Enterprise is to be scrapped. When Dr. McCoy starts acting strangely, Kirk is forced to steal his old ship back and fly across space to a lonely planet to save a friend.The Search For Spock"
.
One of the Klingon commanders seemed very familiar in his voice and manner.
I was sure it was Doc Brown from "Back To The Future (1985)Adventure, Comedy, Family, Sci-Fi Marty McFly, a typical American teenager of the Eighties, is accidentally sent back to 1955 in a plutonium-powered DeLorean "time machine" invented by slightly mad scientist. During his often hysterical, always amazing trip back in time, Marty must make certain his teenage parents-to-be meet and fall in love - so he can get back to the future.Back To The Future"
. I finally remembered
today to check, and it turns I was right - it was Christopher Lloyd.
I was just about to pack up for the night when I got a chat box pop up from
someone connecting to the TTYLink port. I haven't seen anyone - other than
Ian, I think - chat on that in years. Apparently they did some work on the
original Talker server code I wrote years ago, which eventually became the
RISCtalk server. It was always more advanced than my code!
I did I brief investigate with tcpdump on Last.FM data this evening. After a
false start it does look like the server is responding badly. It's sending a
'you didn't give me any post data' response before I've actually given it
any. Either it's wrong, or I'm misunderstanding the HTTP protocols .
Either's possible. I've left a
description of the problem on the AudioScrobbler developer forums
which they do read and reply to. Maybe there'll be something said about it -
maybe it's me being poor.
Tonight's torchwood was quite poor, I thought. Interesting premise - people
having fallen through a rift in time, 50 years into the future. Been done
many times before, but always interesting. Yet they took it nowhere really.
A little bit of character development was really the only thing that I think
was achieved. Oh well.
I'm not sure that it is the sugar that makes my mood change so. Still, I'm
probably better off without so much sugar.
I had a cunning thought this morning. Not that it's a lot of use in general,
but I can actually point a *.gerph.org at my home machine, even though it's
a dynamic address. Because I register a dyndns.org address, I can use a
CNAME to point to the gerph.dyndns.org name. Then it will resolve
properly. Voila, me.gerph.org now points to my home machine. Not that it
runs any services that I advertise except ttylink. But it's there.
I noticed, looking at the server logs today, that Squid thinks that I'm
abusing the proxy with my last.fm client. I'll need to look at the code
more carefully because I don't think that I am. Could be a
mis-stated content-length for a POST request, I suppose.
And my data transfer counter doesn't appear to work quite properly. I'm
not entirely sure why, though. It doesn't record the end-of-day reading,
which means that it isn't being 'stopped' properly. Confusing anyhow.
I was trying to find a track that matched my mood this evening. I
couldn't decide, so two will have to do.
I've moved the downstairs stereo today, so that the tree can go where it
was. So instead, it's sitting behind the sofa. The squeezebox is on the
other side of the room. All works anyhow.
I couldn't sleep last night for ages. And when I did I kept waking up and
being unable to move. On the plus side, I managed to put together a coherent
sentence in my head that I've been working on for a bit. It takes me
a while to string words together.
Since Demon clearly don't want to warn me when my net usage exceeds their
'fair use' caps, I've written myself a little script which will do so for
me. If I've got the code right, of course. Tests show it to be correct. The
script will run once an hour and evaluate what I've done today. If it looks
like I'll be exceeding the 'warning' level I've set myself (4/5 of their
'maximum') then it will mail me to let me know. If within a day I exceed the
amount which would be necessary to sustain over the full 30 day period (ie
limit divided by 30 days) then it will give me a sterner warning. At the end
of every day it will then record the network usage so that I can be sure
that my records are correct.
It hasn't taken me all that long to do this, and I understand that it would
be more complex for multiple users, but still it would prevent a lot of
excess frustration from users. It's always better to warn of possible
problems than to just slap people for them.
Whilst working on something completely unrelated thing I got a crash from
RISC OS. A very brief examination (ok, I spent about a minute on it) tells
me that EtherH was issuing Service_DCIDriverStatus with a DIB pointer of 0.
That's a little naff. Maybe it was a minute and a half.
I rang Angela today to make sure that I'd got her address right. I had. Yay.
She sounds very well and seems to be having a great time.
I'm a little annoyed at Demon today. I got a letter from them saying that my
network usage was excessive so they were cutting my bandwidth. I'll accept
that I'm using probably more than I should. That's fair. But I've not
changed my behaviour on the 'net at all recently. What they did do, about a
month or so ago, was to quadruple my bandwidth from 1Mbps to 4Mbps (actually
the rate claims to be 5632Kbps). So, by doing so I've been able to use the
'net more and thus exceed. So what's their solution to the problem ? Reduce
my downstream bandwidth to 128Kbps for a month (during 'peak' times). So
from 1024bps up 4x, and then penalised back to 32x lower. Upstream remains
the same - still 448kbps. So I'll now be about 4x faster uploading than
downloading. I wouldn't have minded a little bit of warning that I was using
a limited service - I believed the service to be uncapped.
Greebo's got a sore eye. He's squinting with his right eye and it's
watering a bit. I don't think it's anything serious; he's probably just
got something in it and then rubbed it or something so it's sore.
I was wondering last night, after writing all that ramble and before falling
asleep, why it is that I get excited over little silly triumphs. Like 'Yay I
made a cup of tea!' and do the silly dance that goes with it ('sokay, I
don't do the dance when there's anyone around), and then feel crappy a
little while later. I use the example of 'tea' because it's trivial, but it
could be any particularly simple thing that I've done, like 'yay, I've drawn
a map of the world using polyconic projection!' (yeah, kinda I included that
for effect, 'cos it was cute, but it's not actually that hard), or
something similarly pointless. It seemed to me - last night, during that
period where just about anything seems a good idea until the morning - that
there must be a reason that I tend to flip from being so disproportionately
excited to being equally fed up.
I also wondered about what the graph might look like and whether the period
of the transition was large or whether it was a very rapid change to being
fed up. I didn't come to a conclusion other than that it's not amazingly
rapid; and (as I recall - and it's always hard to remember what it feels
like for your mood to change) it seems to be between half an hour and a few
hours. So that's not amazingly quick.
But anyhow it occurred to me that there must be a reason. And, this morning,
the thought occurred to me that I have a lot of sugar in my tea - 3 spoons -
and whilst I've never noticed that it made much of a difference to my mood
in general, almost everyone else says that sugar is a big factor. So I
thought, 'maybe it's the sugar that changes my mood'.
Thinking about it now, the way to investigate this would be to remove sugar
from my tea for a bit. Since I don't have extra sugar in other things - I
don't like chocolate much because it's too sweet, and I don't really eat
much other sweet stuff. Of course, unless I can split myself into two people
- one who has no sugar, and one who does - it's not actually possible for me
to know whether it's made any difference.
So... the solution to this problem is simple. Place me in a sealed box,
together with tea making equipment, and the usual things I would be doing.
Then, never look in the box. Because until you look in the box, I'm both
drinking tea with sugar and not drinking tea with sugar - until I'm
observed, I'll be doing both. I think the flaw with this is that without
being observed - I presume that my observing myself doesn't affect the
little world that is the inside of the box - there's no way to get any
result out of the system. And I think there's a problem with the fact that
the whole point of schrödinger's cat is that it's a macroscopic event being
affected by a quantum event.
My physics is a bit rusty so although I know the above to be rubbish, its
basis in physics may also be rubbish.
Either way, I'm going to try avoiding sugar. Since there's only two real
actions I can take - to keep having sugar as normal, and... not - it seems
that the 'not' is a useful proposition.
I just have to mention the whole 'Verizon-Maths' thing that has
been going on at the start of this month. In case the site goes away - it
being a transient thing and all - this is the problem that seems to be
endemic in Verizon support to not understand the difference between '0.002
cents per kilobyte' and '0.002 dollars per kilobyte'. It seems quite
bogglesome.
I've got a load of CDs lying around here of discs that weren't written
right, or have other faults on them. I'm loathe to throw them out
because there must be some use for dead CDs. In the past I've
used them as coasters (hence the namefor dead CDs) but I've got enough
of them now. I'm sure you could make some sparkly christmas arrangement
with them but I'm not talented enough for that.
I've just noticed that I've got some bits on the side that I had meant
to send to Julian and forgot about. Ooops. I'll give them to him when he
comes up - it'll just be easier.
I took a chunk out of a finger today when I was trying to open a
'tamper-proof' packet. It hurts when I type now. Grr.
Oh, and my new HTTP-CGI-server-for-my-comments-form-thingy appears to be
working.
So my first dream last night, before I was woken by Greebo clawing my
cheek, was about going to a large open air concert. Unfortunately it
was also attended by 12 people from another planet who were intent on
killing everyone on earth - and obviously decided to start at the
concert. Before everything started I left to warn people. Nobody seemed
to believe me when I told them that they should leave the city because
of the 6 foot aliens who couldn't be killed were going to kill
everyone. When they started to attack the concert, everyone ran
screaming, and I ran too (ok, so you have to say it like that), down
towards the river and bridge, over the bridge and hiding in a barn that
seemed to have a lot of chicks in it. Watching through holes I could see
some of them coming over the river, killing people as they went. Each
was going a different way - since they couldn't be killed, having
strength in numbers wasn't all that useful. One stole a bike from the
barn next door, and didn't see me, but another found me and shot me. And
it turned out that I couldn't be killed either. But I could pass out.
When I came around, all 12 were staring down at me and explaining why
they were there. I'm sure it made some sense at the time, but now it's a
blur. My only thought was that there was nothing I could do.
Greebo woke me, then, with a claw. I think he was just stretching.
The second dream, which I think I drifted straight into, was more
normal. I was going to see Caroline's family for a party. In fact it was
similar to the last party, but certainly not just reliving it. I left
after a very short while. Is it odd when even in your subconscious
you're as insecure and scared as in real life ? Aren't you meant to be
the person you want to be in dreams ? Uh, I really don't want to follow
that line of thought, do ?
When I woke up I had a few lines floating around my head, as I usually
do.
I don't like coincidences and they
bother me when
they happen. I was emptying the diswasher today and as part of my running
train of thought I was struck me the image of 'The Scream', the painting.
Now I don't actually read papers or watch tell that much, and I hadn't at
that time used Google today. So when I loaded up google and found it had a
little picture of The Scream as its logo, it being Edvard Munch's brithday
today. So... what's that mean ? That I'm picking up birthday greetings
transmitted by aliens on my teeth ? Or... ?
This evening I've done a few fixing bits on the diary, 'cos it's been
annoying me and I wanted a break from other things. So, I've now written
another web-mail-gateway thing for myself. I've done this a few
times and each time I wonder why I've done it again. This time, though
there's some very reasonable reasons. Honest. Previously I was using a
FormMail.pl script under Apache's CGI interface. That's fine except that I
don't really want to expose Apache to the outside world. The reasons for this are pretty simple:
- Apache's well known and thus a target for people to attack
- I've found Apache to be a hassle to set up in an isolated way so that
internal and external pages are completely separate, so I would prefer to
have a completely independant version for the external stuff.
- I don't want to run Apache twice because it's big and I'm only using a
small server.
So instead I've got my own server. It's based on my simple HTTP server that I
wrote a while back. It's not all that bright, but it's completely different
to anything else so it'll at least not be a target for people. Then putting
the same sort of functionality into it for passing emails on to me was pretty
easy. This should mean that 'comments' link after each diary entry works
again, rather than just saying 'email me here'. The only disadvantage is
that it relies on my server here, which means that my server has to be on.
Not that it's off that much anyhow, but it does make something of a
difference.
Yesterday I used the same HTTP server code (it's all perl and pretty easy
to repurpose) to make a simple web-service for Chris. I was a little amused
that he was surprised I'd written it quite quickly. It's not all that hard
to implement something that just responds to simple requests. It's only an
interface layer, after all.
A few days ago I found out that one of the
Beth Orton
tracks that I really like, I Wish I Never Saw The Sunshine
was originally by
Ronnie Spector And The Ronettes .
Handily the 'Second Hand Songs' site has
quite a bit of info on the cover tracks. It's surprising what are covers
and what are not.
A few days ago, searching for something else, Dad came across an album
called In A Metal Mood , by
Pat Boone , of originally
heavy tracks, done in a 'big band' style. Very strange.
[Remainder of entry was written a few days ago but postponed because...
well, I don't know but it was... it's a bit rambly]
I found some notes I made a while back (oh, a year or so ago) on the things
I've done. It's quite surprising really. I made a little list of the general
Internet things that I'd done... it's not actually all that long, really...
- RFC 495 Telnet (server)
- RFC 821 SMTP (client and server)
- RFC 862 Echo (client and server)
- RFC 863 Discard (client and server)
- RFC 864 Chargen (client and server)
- RFC 865 Quote of the day (client and server)
- RFC 866 Active users (client and server)
- RFC 867 Daytime (client and server)
- RFC 868 Time (client and server)
- RFC 959 FTP (client)
- RFC1035 DNS (client and server)
- RFC1036 NNTP (client and server)
- RFC1179 LPR (client and server)
- RFC1256 ICMP Router discovery (client and server)
- RFC1288 Finger (client and server)
- RFC1459 IRC (client and server)
- RFC1661 PPP (implementation based on BSD PPP driver)
- RFC1928 SOCKSv6 (proxy)
- RFC1939 POP3 (client)
- RFC1945 HTTP 1.0 (client and server)
- RFC2030 NTP (client)
- RFC2045 MIME (miscellaneous uses)
- RFC2131 DHCP (client)
- RFC2397 Data scheme (fetcher)
- RFC2433 PPP MS-CHAPv1 (implementation)
- RFC2472 IPv6 over PPP (implementation)
- RFC2516 PPP-over-Ethernet (client and server)
- RFC3164 SysLog (client and server)
- RFC3927 Link local dynamic address allocation
- (?) Multicast DNS (client and server based on Apple rendezvous/bonjour
mDNSCore)
- (many) CGI (servers)
- (many) RLogin (client)
- (many) RExec (client)
- (many) SSH (client based on putty)
- (W3C) CSS1 (parser)
- (many) HTML (parser, renderer, simple DOM)
- (W3C) SVG (parser and bi-directional converter)
- (many) RSS (parser, reader application, generators)
- (many) Atom (parser, generators)
- (many) NAT and packet filtering (based on IPFilters)
- (many) Wake-On-LAN (client)
Most of which are pretty rudimentary, but some of which are quite wide. I
didn't feel I could include the IP, TCP, UDP and Multicast bits, because
although I've worked with and extended them within the BSD sources they're
not really enough to warrant much in the way of description. You can't
categorise it, really, but I made the entire Internet stack completely
restartable - you can reinitialise any part of it and it recovers from where
it was (if sufficient information is available). I'm actually really pleased
with that, although nobody will probably care.
And it doesn't get across quite how many IRC clients I've actually
written (about 6, I think), including one that I wrote in a day from
scratch. Yeah, I'm quite pleased with that.
I ported Mozilla Classic renderer, and it performs exceptionally well for
the task it was designed for. Albeit without images.
Then there's the graphics formats and processing that I've done stuff with.
Might as well list them as I'm thinking about it.
- Generic image file conversion system (ImageFileConvert)
- Generic image file rendering system (ImageFileRender)
- BMP creation and reading
- ICO creation and reading
- JPEG creation and reading (IJG based)
- PCX reading
- PNM reading (PBM, PGM and PPM)
- Sun raster reading
- SVG creation and conversion (already mentioned above, actually)
- WMF raster reading (LibWMF based)
- XBM reading
- JPEG reading and rendering (IJG based, many optimisations and support
for non-standard forms)
- CC ArtWorks rendering
- PNG creation and reading (LibPNG based)
- Bitmap translucency and alpha channel rendering
- Generic colour translation (regular operations such as contast,
brightness and gamma)
- Abstracted video system to allow multiple display drivers to be used
- Implemented rescalable Teletext mode
A lot of that isn't down to what has been done to the graphics system, but
how it was done. There's a whole lot of good (in my opinion,
obviously) design in there so that the whole system is flexible and
extensible.
Then there's the more low level work which involved more fun things which
aren't really categorisable...
- PS/2 Intellimouse and Intellimouse+5 support
- Touchscreen driver (Zytouch), and the necessary abstraction to support
it
- Abstracted hardware implementations for miscellaneous RISC OS hardware
(RTC, NVRAM, Timers, IRQs, etc)
- Converted the entire operating system to be 32bit, rather than 26bit
(it seems wrong to give this same weighting as all the other things!)
- System initialisation replaced to allow easier porting to new systems
- System modularisation to split off tasks and make them easily upgradable
- Backtrace support for all kernel functions
That doesn't seem much, but it was a huge task to update things for 32bit,
and has no user-facing impact, of course. The backtrace support is more
interesting, though, because it's pervasive. It's also one of the less
transferrable of the skills - unless you happen to be working with an
ARM-based system which has no inherent backtrace ability it's not going to
be all that useful to know. Amazingly useful, though.
What have I done on filing systems ? Actually, not that much, although in
reality there's a whole load of little things that you never see and which
are far too difficult to quantify.
- Extended CDs to support RockRidge long filenames and Joliet long
filenames.
- USB Mass Storage device driver (SCSI over USB implemetation)
- LanMan extensions for encrypted passwords, and remote operations.
- Large scale stability improvements by restricting executables to
well formed files
I'm bored now, so I don't really think I'll keep listing that sort of thing.
The unfinished things are far more fun. It makes me sad to think of them,
though. Oh and those which were finished, but never had any sort of real
use. Just looking at the folder here, I've got a bizarre collection of
things...
- A calendar rendering and scheduling toolkit
- An MP3 buffering system for AMPlayer (part of the Homeworld port)
- A partial Homeworld port
- A binary data dumping library (intended to be a generalised memory
dump gadget)
- An Opera skin processor for IconBorders
- So many other styles of borders it's silly (I'm sure I had a little
gallery of them somewhere but can't find it now)
- A Pascal compiler toolkit for Norcroft (using P2C)
- Fast sprite super-sampler (part of the DrawFile-icons project)
- Many gadgets using the timers for frivolous (K.I.T.T. lights) and
not so frivolous (AMPlayer control gadget) tasks
- Generalised key binding module
- Spreadsheet management library and renderer (using JavaScript as a
processor for equations)
- Near complete uPnP implementation
- Application update fetcher Toolbox object
- Near-PThreads implementation
- Toolbox-application harness (JavaScript to implement Toolbox
applications)
- Map position fetching gadget (specify a location and it fetches and
renders a map of it)
- Iconbar replacement tool (moves icons from the iconbar to independent
plugins)
- A few filer extension tools which were only ever toys.
- The 'AMFiler' project - a full-screen MP3 player front end for use with
a remote control (pity the RiscPC is far too big for this to be
practical)
- The 'RO-PRM' project - an XML description which could be processed by
XSLT to give documentation in the style of the Programmer's Reference
Manuals
- Many development tools which probably wouldn't ever be useful outside
of my own use.
- Generalised database fetching interface, using multiple data sources
- Software implementations of hardware using abort-trapping to provide
memory mapped registers (many chips, but most usefully a couple of
audio MPEG decoders)
- Special versions of Doom, with 3D glasses support are lying around here
somewhere.
- A partial Quake 2 port
- Operating system level debugging and diagnostics tool, using JavaScript
as it's user-facing language
- Generic NMEA parser, and GPS source abstraction
- Earthquake seismograph SEED parser
- TV schedule plugin interface and fetchers
- PFR parser and conversion tool
- SNMP interface module
And I'm feeling that I'm just listing things randomly now, but this is only
scratching the surface of the things that I've actually done. It's not even
a slightly complete list. I was chatting to someone on the talker a while
back and expressing surprise that I'd written something or other, as I
didn't even remember doing it, but there it was. All 'nearly finished' and
even mostly documented. I wonder if it's irony that I can't remember now
what the thing was that I couldn't remember then. I think it is, but I'm
never quite sure. I guess it'd be easiest to just dump the list of
registrations
somewhere (in the future)
as that gives most of the things that I've done. At least, if they went as
far as being registered.
And as well as that sort of thing, I've obviously designed and written
the whole build system that goes around it. That's a perl harness to amu and
I was actually really proud of it. Runs so amazingly slowly on RISC OS, but
it's usable on Linux.
Hey, and then there's silly private projects like the generalised
cover-fetcher which, I believe I've referred to in the diary on occasion.
It's now reached the stage where it's able to fetch Biographies, CDDB
details, Covers, Discographies, Lyrics, and Reviews. It's also got a dodgy
'Moods' fetcher, but it's poor because it uses AMG as the source. It's all
nice and generic and 'pluginable' (which ain't a word, but it'll do for now)
and written in Perl.
The number of little debugging that I've written is a little surprising.
Maybe it's because all the other tools are poor, or maybe I'm not using them
right. To be fair, though, the debugging tools that do exist are poor - DDT
is... not very good (and certainly won't work on any of the modern systems),
and I've never actually tried the other debugging alternatives. I guess, I'm
used to not working with an inline debugger, so much so that I don't really
need one. That said, debugging a system from processor start-up is far more
fun than playing around in a debugger - "Did the screen go blue ? Nope, so
we didn't get that far then". Ah, joys.
And of all this random waffle... what of it actually matters ? It's all
fun and it's all had a purpose at some point. Usually things get
written for a particular purpose, but are never actually required. I think I
touched on this a while back. How many projects get left by the way-side
whilst others grow ? And does it matter that they get left behind ? If you
learn something, and if they're still around in case you need to resurrect
them, does it matter that they're not used yet ?
Well, I can always say that I've learnt a lot from them, but it's not
exactly easy to quantify. I mean, if someone asks you about whether you've
ever done any work with (let's say) a browser, what might I say ? Strictly,
the answer is 'yes, I've ported Mozilla', but that doesn't quite cover it.
'Porting Mozilla' can mean all manner of things. If you were on linux, then
it means compiling it. If you're Peter Naulls it means making the whole
thing run on RISC OS (a far more impressive task).
For me, it meant picking and choosing what I wanted for the task. I didn't
want scripting, and I didn't want many of the more advanced features. More
importantly, I didn't want to use C++ because it's so poor on RISC OS, so my
only choice was to use the Mozilla Classic source and pick and choose my
bits. Using just the basic style system, the html parser, and the renderer
(and some support code), gives a really useable browser. As the goal was to
create a documentation viewer, it was great. No images though, as that was a
separate modular component that would be plugged in. Amusingly, whilst it
didn't support images it did support frames, and plugins. And could itself
be embedded in another browser as a plugin.
But that's all very longwinded and filled with caveats. And it doesn't cover
any of the 'modern' issues with browsers. On the plus side, I guess, it's a
task which fits well to its goal.
And if I look at the work that I've done it's been quite wide-ranging, so
what's that say about me ? That I have a short attention span and have to
work on many things before I get bored ? Well, that's almost true really,
but I do finish things that are required. It also implies that I like to
experiment with things. I'm not sure that's a good thing in other people's
eyes.
Actually, this bothers me quite a bit. I ask myself these questions - about
how to do things on the computer, or about the world in general - and I
wonder if other people do the same thing. Do other people actually try to
work out how they decide to walk on the road-side of someone that's coming
toward them ?
Ok, let's walk through that one because it's probably sounding insane.
Usually I pick and choose the people that I walk on the road-side of as
they're coming toward me, or as I go past them. It's not a conscious thing
normally, and I guess everyone does it. A while back I was walking down the
street and I was trying to work out what it is that guides me on that
decision. So whilst I'm trying not to think about doing it, I'm watching
myself deciding what to do. I came to the conclusion that it was something
like women and children go away from the road, teenages go closer to the
road than me, old people go away from the road. There were some other odd
little rules like bikes going where they like, and anyone who's much bigger
than me goes where they like. Now that all seems pretty obvious. But do
other people try to work out those rules that they're following ?
My point - (hey, Julian!) and I do have one - is that I try to ask these
questions or to experiment with things and I'm not sure if that's what other
people do. Or whether it's normal. Do people look at the sky, see the sun
shining in beams through the clouds and try to picture what the cloud's
shape must be like to make those beams ? Is asking the question of whether
doing this is what other people a normal thing ?
I dunno. It's all a big question. It's not like an important question, but
it's one a part of who I am to ask, I guess. Which is bizarre, 'cos although
I ask in my head or I experiment when doing computer things, I'm incredibly
conservative in person. Ooh... Could that mean, then that how I think and
how I use the computer are - to me - treated as the same sort of thing ?
I'm pretty sure that's kind of bad. Asking myself that question probably
isn't all that wise, either.
How did I get here ? Oh. Things that I've done, to things that I think.
Anyone might think that tend to drift in my thoughts . I guess this
is sort of like the odd error-handling ramble I did a few months ago. It's
just an odd way of expressing what I'm thinking. Or something.
I guess all this is sort of just a way of noting to myself some of the
random rubbish that I've done so that I don't forget. I do have difficulty
trying to quantify what I've done. So much so that I feel sometimes that
I've not actually achieved all that much. And, in a way that actually
matters to me, I've not.
I suppose I must go to bed.
Whilst chatting to Chris this evening, I noticed a rather poor feature of
the chat. It only has 3 lines of input history. Now that's not usually a big
deal because you usually only want to edit the line above, but... seriously,
it's not that hard to have a larger history and it seems rather foolish to
limit to only 3 lines. It's very noticeable. Actually the chat's ok in
general, but sometimes it feels a little basic.
Again I had Greebo on the bed with me last night.
And he's here now I've got into bed. Obviously he's just been waiting
for me.
Greebo slept on the bed beside me again last night. It's very cute and nice,
but it makes it a lot harder to sleep, 'cos you're always worried you'll
knock him off.
I awoke with a line in my head, without being completely sure where it was
from - 'so the days they turn into years'. After a bit, I was pretty sure it
was Genesis, but I couldn't say what the track was. It's strange; some things
I can get the track more quickly than the artist. Maybe I just don't know
what 'And then there were three' as well as the other albums.
A minor screw up in the remote diary submission code meant that someone
else's email ended up in the diary earlier. Oops. I've fixed the problem
now, and it shouldn't happen in the future, but sorry to Chris for
publishing his email. Doh.
There's actually something odd with the diary processor on linux now. It
seems to want to process all the URLs with queries on them - all the comment
submission links keep coming up with 'unrecognised URL'. The RISC OS processor
never did that. I have no idea if I fixed it, or there's a switch to change
for that behaviour. It is mildly annoying though.
Greebo's with me again tonight. Fast asleep as I write this. Aww. I
think he is just a little lonely.
My mind's gone quite utterly blank. I was thinking about something
earlier whilst I was cleaning my teeth and half thinking to myself 'this
is a strange thing to be thinking about'... only it's gone now. Damn
you, short term memory. Was it something about religion ? I caught the
end of some
Robin Hood (2006, BBC One)Action and Adventure/DramaAn updated series following the life of Robin Hood and his Merry Men in Sherwood Forest. Together they steal from the rich and give to the poor--all the while avoiding their enemies Sir Guy of Gisborne and the Sheriff of Nottingham.Robin Hood thing which Mum and Dad were watching a few
nights ago, and - maybe I'm just reading things into the short segment
that I saw - there seemed to be an overtone (over the obvious 'religious
crusades', which I believe were the backdrop to the story in any case)
about war and terrorists intentionally trying to escalate things. I
think, though, that it's probably just me reading more into it than
there was. But I don't think I was thinking of religion at that time.
Was it something about being sane ? It could have been. I have a feeling
that it would have been somewhere around that area. It was definitely
related to something to do with
Torchwood (2006, Starz!)Action and Adventure/Drama/Science-FictionCaptain Jack Harkness is a man from the 51st century trapped in the past, finding himself drawn into alien conspiracies as he works for Torchwood. Torchwood is a top secret British government agency whose job it is to investigate alien goings on in the world, and to act as mankind's best interest and last hope for defence, if needed.Torchwood. Or something which was
triggered by something which was on
Torchwood (2006, Starz!)Action and Adventure/Drama/Science-FictionCaptain Jack Harkness is a man from the 51st century trapped in the past, finding himself drawn into alien conspiracies as he works for Torchwood. Torchwood is a top secret British government agency whose job it is to investigate alien goings on in the world, and to act as mankind's best interest and last hope for defence, if needed.Torchwood. Or some derivative
thereof. I think 'thereof' is the word I want.
As I sit and stare into space, and listen to Greebo snore, and the wind
outside, I can't think what it was at all. The wind... It's been windy
for weeks now, it seems. All night. I don't know why but each time I
hear it, it gives me that feeling that I should be somewhere else. It's
not that I feel I should be out in the wind. It's more that I should be
somewhere to stop the wind. Does that make any sense ? I don't know.
I've given up on trying to find meaning in the strange things my mind
connects these days. The wind makes me worry. The funny thing
here is that I'll never remember the kind of face that I have as I write
that. It's a sort of 'perplexed at myself' sort of look. Like you can't
get across hand gestures in phone calls, you can't really get across
expressions to your diary. Anyhow, it makes me worry that it's hurting
someone. No, that's not it. That someone's scared by it ? That's closer.
I still can't sleep, so I'll mention some random stuff I was thinking
about on the way home about a week back. It's about phones and how you
can have all sorts of stuff on them now. I was wondering how long it
would be before the trojans began to appear. Maybe they already have and
I'm too backward to notice. Consider that you've installed a funky
little game and you've played it. It's great. Now, you exit the game and
go back to the phone proper. Or so you think. Really it's just
pretending to be your phone, just doing everything you think it should
do. When you make your calls it does what you ask it, but it also
records everything you do. Probably not the talky bits, but it can
record buttons. So if you give your pin number or anything, it can have
those things. How would you know that your phone wasn't doing what you
expected ? I guess it would act differently. Maybe it'd be slower than
usual, because it had to go through the contortions of the recording /
emulation process. Maybe it wouldn't look quite the same as you
remember for your menus because the emulation wasn't all that great.
Maybe it'd send messages that you had no recollection of sending. Better
still, if you're on a GPRS system, it could be communicating with IP and
even spamming out mail for you. On your incredibly expensive mobile
bill. Oh the fun they might have.
I'm sure that people in the business must know all this and know all the
many steps they've taken to prevent such malicious use. But I don't so
I'm free to wonder and be scared by what I don't understand. I can see
many ways to make such things difficult, but it's hard to see any way of
preventing this sort of thing happening without removing the ability to
provide user-installed, executable content. It's probable I'm just
paranoid.
Maybe it's like the whole reading emails thing. It shouldn't be
an issue that you 'shouldn't open emails that you don't expect' (or
whatever the current recommendation, from whatever people you take such
advice from, is). Whilst it's true that the act of observation does
change the outcome (oh, that's just too strange to be saying here) it
shouldn't be the case that the recommendation is to not observe. How
would it be if we just threw our (physical) post in the bin if we didn't
recognise the postmark ? Or ignored phone calls if we don't recognise
the caller ID (ok, so I actually do that if they don't give a caller ID,
but that's not the point) ?
It's just wrong. It's putting the onus for a failing in the system on
the end-user, rather than removing the cause of the problem. In the case
of emails the problem (in the vast majority of cases) is that the HTML
system is insecure and provides both information about the association
of email addresses and IP addresses, and provides a vector for attacks.
So rather than pissing around saying that users shouldn't be viewing
their email because there's a possibility that it may be a security or
privacy issue, fix the bloody problem. If you can't fix the
problem, remove the cause entirely - stop allowing HTML to be used if
it's that much of a danger. At the very least, don't run executable
content, or perform remote fetches which provide that implicit feedback
which is a privacy issue.
I realise I'm talking about an old problem, and I feel like I'm kind of
talking from a position of ignorance. Oh well.
Oh here we go... my mind's playing silly buggers again...
The problem with computer systems is that they're not adequately tested.
The fact that faults are found shows that. How long will it be before
systems are designed from the ground up in a way which, at all stages,
it is provable that there are no faults ? Such a system would consist of
components whose interfaces could be shown to be incapable of performing
any but the actions which they were specified to do. I'm sure such
systems exist and I have vague recollection of specifying things in that
way for one of our courses at university, but it was all very accademic.
I guess there's one thing in specifying things so that there are no
unforeseen side effects, but if your specification is wrong then you're
stuffed.
Maybe my brain's actually no longer working and is just spouting
nonsense. I think that may be the case. I'm going to try to follow
Greebo's example and sleep. Although I will try not to snore like him. I
don't know if I snore. Nobody's ever told me I do. Certianly Greebo's
never mentioned it. But then he doesn't say much except 'mew'.
Oh damn. Just as I close the editor, I get a flash of what I was
thinking about whilst cleaning my teeth. But then it was gone and all I
was left with was the word 'waiting'. Is it wrong to hate your own mind
in the third person ?
Greebo decided to come and sleep with me last night. Not at the bottom of
the bed, right beside me, where the pillow would have been if I'd not been
reading. So when I decided to go to bed I had to pull the pillow down and
he wouldn't move. So I just left it on top of him. He's only once sat on
the bed, never mind slept on it in here. Aww.
Glancing back in the diary, whilst I was trying to work something out, I
came across a December
2004 entry which listed the summary information for the MP3 collection.
Somehow in those two years, the collection has doubled in size.
JPEG Files: 9524 Size: 1127136 K
Text Files: 30471 Size: 125648 K
MP3 Files: 33425 Size: 181266288 K
The number of text files has more than doubled because there are more than
just lyrics present now, with album reviews, biographies, CDDB details
and discography lists.
Greebo's been wanting a lot of attention again today.
I was going to ring Caroline today, but for a variety of reasons I never got
around to it. I don't know why it's so difficult to just... say something.
Actually, I do know part of why it is. It's laughable really. If I say
something wrong then what little relationship I have will be shot. And
however small that relationship might be, I guess it's more important to me
that I have something, rather than nothing. That sounds strange.
Sometimes you just boggle at the lengths people go to with security. Or
maybe just their lack of thought. I registered with a website today and
received the usual email to get me to activate my account. The email
contained my user name and password. Ok, that's poor. But it went on to say
'Please do not forget your password as it has been encrypted in our database
and we cannot retrieve it for you', which was just bogglesome. Internally
they'll encrypt it, so I can feel warm and fuzzy that the password is safe,
but they'll email it out to you in plain text where anyone might intercept
it.
I know it's not an important thing in this case - it's just a forum site,
rather than anything that actually matters - but still, it's really
confusing. Do they believe that the transmission of email is safer than
their webserver ? Is that why they'll happily send it by mail, but won't
keep it on their system ? I... just don't understand.
I was looking at my site today and thinking to myself 'do I need to make it
look a little more up to date ?'. It does look a little bit like the old
style sites from early HTML days. I'm not sure it matters. It's clean, which
is what matters to me. It doesn't use unnecessary scripting or external
components. And it still works on the 1.72 (from '98!) version of Fresco.
Actually it looks nicer in Fresco than in Oregano. I can't test it with
ArcWeb, because it doesn't run on the new OS, but as I recall, the tables
support is good enough for it to work. It works less well in Webite - I got
a data abort and the application hung; oh well, it's to be expected I
suppose. The last Webster I have seems to be 'ok', not perfect - there
are alignment issues because I've aligned tables and things - but it's
certainly readable.
My Mozilla port renders it pretty well, too, albeit without graphics. I
never did finish the IFR gadget, unfortunately.
Greebo woke me early this morning, scrabbling at my door. Apparently Mum's
told him tonight that I'll be leaving my door open. Hmm.
Claire rang me today - apparently they're expecting again. So there'll be a
nice little brother or sister for Bethany. Yay! How exciting! And a little
scary for them I guess, but... yay!
Something Mum and Dad were watching at tea time had a small section of
incidental music was more
Zero 7 . Very strange that I'm
noticing it now.
On the other hand, I don't watch TV that much so it's possible that there
are loads of things I would recognise on telly and I just don't see them.
After
Torchwood (2006, Starz!)Action and Adventure/Drama/Science-FictionCaptain Jack Harkness is a man from the 51st century trapped in the past, finding himself drawn into alien conspiracies as he works for Torchwood. Torchwood is a top secret British government agency whose job it is to investigate alien goings on in the world, and to act as mankind's best interest and last hope for defence, if needed.Torchwood tonight there was a BBC 3 advert - the little bits in
between programmes - and I'm sure that the music backing it was
the backing from You're My Flame , by
Zero 7 . Well,
almost sure; I'd have to watch it again, I guess.
I'm so tired. It's about midnight and I've been awake (pretty much) since
about 5am when Greebo was crying. I dropped off for about half an hour at
about 7, but otherwise it's been a long day. More so, 'cos I only get to
sleep at about 3.
The last 3 or 4 nights, Greebo's been coming upstairs when Mum and
Dad go to bed and sitting with me until I go to bed.
There's something strange about trying to email people and their names not
being the same as the names in the address book. More specifically, I sent a
mail to a couple of people today who have changed their names - but their
address book entries are the names I know them by, so when expanded they
come out completely differently. It's just strange.
I've had loads to eat today. I've had lunch, a big tea, two mince
pies and half a packet of crisps. And I've still ended up biting a nail.
And since I bite my nails when I'm worried about things, and I know I'm
worried about something, I think I can draw the conclusion from this that...
I'm worried. You know, with deductive skills like these I could do all
sorts of stuff.
|
Disclaimer: By submitting comments through this form you are implicitly agreeing to allow its reproduction in the diary. I say this not because I'm going to ruthlessly attack comments in the diary, but just so that nobody can say "Well, I didn't say you could quote me on that".