The random rantings of a concerned programmer.

Archive for January, 2008

(Untitled)

January 30th, 2008 | Category: Random

7277.jpgSo I got around to tinkering with my new HDDs yesterday Setting up netboot for like the 9000th time was fun; it’s interesting to see how many mistakes and inaccuracies are in that old post of mine. I should update it one of these days…

Anyway.

So after much tinkering, it looks like everything is working, for the most part: the new IDE controller supports 48-bit LBA, so I can write to the entire disk. At least, it hasn’t crashed yet, and I’ve been dumping my entire (local) anime collection to it. Given that I’ve got a 10bT internal subnet set up, it’ll be awhile before enough shit’s dumped that I’ll be completely confident that it’s correct.

When I said “everything is working”, I was lying a little bit. One of the brand new 500GB Seagate drives is a squeaker. A loud squeaker. I’m going to declare it “DEAD” and send it back for a replacement (look forward to upcoming posts on dealing with such a case!), because my god. There’s no way in hell I can trust such a broken-sounding drive.

The other problem is that fsck_ufs still breaks the thing. Well, it doesn’t lock up the entire machine anymore, it just locks up it’s own process during the biord state. Which kinda makes sense, since the machine is netbooted, it doesn’t need to touch the drive like ever.

Now, I did some light digging and biord is just a random undocumented part in the code where the process enters a sleep state. You’re supposed to be able to find it by grep‘ing the source tree, but I haven’t gotten around to doing that.

2261.jpgThe thing is, biord looks suspiciously close to “BIOS Read”, like, dumping a part of the disk from the BIOS. Which, if this is the case, is why the damn thing is locking up the drive: the BIOS doesn’t support 48-bit LBA, despite the IDE controller supporting it. Going to take some more investigation, but I wouldn’t be surprised if this is the case. I mean, how many other people are running huge drives on ancient hacked together hardware?

From my experiences with it thus far, I doubt there are many others. For good reason. lol ;P

Comments are off for this post

January 28th, 2008 | Category: Random

konaharuseki.pngSo all my shit finally came in, etc, and I haven’t tested it all out yet because I’ve been blowing off my schoolwork for the past week or so and am finally trying (barely) to catch up. Instead I find myself browsing the internets and making images like the left, “Konaharuseki”. Sad.

I did get around to trying out my new Q6600 machine. I slapped the 20->24 pin PSU converter in it and booted it up, worked fine, etc. I was in the middle of installing windows on it however (now I have two problems etc) when the installer froze up. So I powered down the machine, swapped out random things, and at the the very least the PSU is dead – it won’t power on another board I had laying around (which powers up with another PSU with a lower rating).

Really fucking annoying, I hope the fucking PSU didn’t take anything else with it. I have a feeling it’s just old and burned out and isn’t able to supply enough juice to the CPU (which is, in itself, dangerous). I dunno.

FRUSTRATION.

Going to (hopefully) get around to testing the new IDE controller I have which I have plugged into a 64-bit PCI riser card (new!) which also needs to be tested. Hopefully this fucker supports 48-bit LBA which I’ll need to run the TB of storage space off the machine.

Testing basically entails setting up a netboot environment, which should be a cakewalk since I’ve done it like three times already. The only catch this time is that the host machine only has a 4GB HDD (lol tiny cheap old SCSI drives), so I’m gonna see how far down I can crunch the fuckers so that they’re all basically sharing the same core filesystem :D

Comments are off for this post

Erlang MUD V

January 26th, 2008 | Category: Random

So I just got back from a “watch girls wrestle half-naked in a pool filled with jello” party, and it was fairly entertaining. Got to see tits, grabbing, etc while drinking free (as in free beer) beer and enjoying the company.

goodbye-satchii.PNGAnyway, now that I got that bit of bragging off my shoulders. As I was walking home I was thinking about Dennou Coil (since I’m modelling my Erlang MUD’s world around it, a bit). The best parts of Dennou Coil revolve around fight scenes, where the characters battle each other (and the constructs in the system) with programs manifested within objects. These programs are forged from items called “metabugs”, which aren’t really explained well, but are rare and sought-after glitches which occur in the digital space.

The thing is, the characters need metabugs to produce the programs they use (really, they barter with other people who can use the metabugs and refine them into things). This was always a bit curious to me, since a program is just data. And data can easily be replicated, so why can’t they just make a couple copies of that powerful metatag they only have 2 more of?

Well, durr, security. They’re interacting with a large system, and any such a system is going to have restrictions on what kind of code it’s going to execute, so some random user can’t just execute any arbitrary code. I mean, stuff like this is already done today, shadow memory and shit where you pad all the data in the machine with extra attribute bits to mark executability or taint or whatever the hell you want.

ghibli1.jpgMy conclusion is that the metabugs are bits of data which have favorable meta-characteristics that allow them to be used to create user-generated programs which can be executed on the system.

And then you introduce the Imago and encodings and it fucks up my entire hypothesis, lol.

But I was thinking, if I were to build this MUD, I’d have to have a fairly good idea of how everything “works” in the make-believe system, so that it all makes sense and shit. I think you’d be able to collect metabugs, but each bug actually is represented as a block of data. The actual data is essentially random (garbage data), and as garbage data is affected by the environment which spawned it.

The characteristics of the metabug would be gleaned from the value of the garbage data; things like color, shape, size, images and sounds perceived within, etc, in addition to what you could turn it into would all be dependent on this data, such that you can just supply any random string of garbage data and it would always describe a unique metabug.

Essentially procedural metabugs.

This, of course, has all the drawbacks of procedural generation: there’s a good chance it could generate dull, boring and expansive possibilities. Which isn’t good.

I dunno. Need to think moar I guess.

Comments are off for this post

(Untitled)

January 23rd, 2008 | Category: Random

If you remember back, an assignment I’m working on is to implement a topological sort in 5 specific languages (no external libraries etc). My Python version turned out to be a mild functional brainfuck (it could have been made a lot worse, I’ve seen what some madmen can do).

I think I’ve managed to trump it with my work-in-progress C implementation though…

HAI
        BTW GET TEH INPUTS
        I HAS A TASKLIST IZ A BUCKET
        IM IN UR LOOP
                I HAS A TASK IZ GIMMEH YARN
                TASK, O RLY?
                        YA RLY, GTFO
                OIC
                I HAS A DEP IZ GIMMEH YARN
                DEP, O RLY?
                        YA RLY, GTFO
                OIC
                I HAS A THING IZ A BUCKET
                PUT TASK IN MAH THING
                PUT DEP IN MAH THING
                PUT THING IN MAH TASKLIST
        IM OUTTA UR LOOP
        BTW FLATTEN TEH INPUTS
        I HAS A DEPTREE IZ A BUCKET
        I HAS A BOOT IZ 0
        BTW CAREFUL IZ NUMBAR
        IM IN UR LOOP UPPIN UR BOOT
                I HAS A SOCK IZ GIMMEH BOOT OUTTA TASKLIST
                BTW SOCK IZ A SUMTHIN ELSE
                BTW OUTTA TASKLIST RETURNS NUTHIN ELSE IN TEH SUMTHIN ELSE
                SOCK, O RLY?
                        NO WAI, GTFO
                        BTW YA RLY UNNEEDED
                OIC
                BTW SOCK IZ A [TASK, DEPT]
                I HAS A TASK IZ GIMMEH 0 OUTTA SOCK
                I HAS A DEPT IZ GIMMEH 1 OUTTA SOCK
                I HAS A SHOE IZ 0
                BTW GUM IS ELSE TOGGLE FOR LOOP
                I HAS A GUM IZ 0
                BTW ADD DEPT IN
                IM IN UR LOOP UPPIN UR SHOE
                        BTW LOOPIN THROUGH DEPTREE
                        BTW DEPTREE = [task,[dep,...]]
                        I HAS A TMP IZ GIMMEH SHOE OUTTA DEPTREE
                        TMP, O RLY?
                                NO WAI, GTFO
                        OIC
                        I HAS A TMP2 IZ GIMMEH 0 OUTTA TMP
                        BOTH SAEM TMP2 AN DEPT, O RLY?
                                YA RLY, GUM IZ 1
                IM OUTTA UR LOOP
                I HAS A PANTS IZ A BUCKET
                I HAS A PANTSU IZ A BUCKET
                PUT DEPT IN MAH PANTS
                PUT PANTSU IN MAH PANTS
                BOTH SAEM GUM AN 1, O RLY?
                        YA RLY, PUT PANTS IN MAH DEPTREE
                OIC
                GUM IZ 0
                I HAS A JAWBREAKER IS 0
                BTW FIND THE TASK
                SHOE IZ 0
                IM IN UR LOOP UPPIN UR SHOE
                        I HAS A TMP IZ GIMMEH SHOE OUTTA DEPTREE
                        TMP, O RLY?
                                NO WAI, GTFO
                        OIC
                        I HAS A TMP2 IZ GIMMEH 0 OUTTA TMP
                        BOTH SAEM TMP2 AN TASK, O RLY?
                                YA RLY
                                        GUM IZ 1
                                        JAWBREAKER IS SHOE
                                        GTFO
                        OIC
                IM OUTTA UR LOOP
                BOTH SAEM GUM AN 1, O RLY?
                        YA RLY
                                I HAS A TMP IZ GIMMEH JAWBREAKER OUTTA DEPTREE
                                I HAS A TMP2 IZ GIMMEH 2 OUTTA TMP
                                BTW TMP2 IZ STILL SUMTHIN ELSE
                                PUT DEPT IN MAH TMP2
                OIC
        IM OUTTA UR LOOP
        OBTW DEPTREE IZ [[Task,[Dept,...]],...]
        NEED 2 GO UNTIL IZ EMPTY
        AND DO STUF TLDR
        I HAS A CYCLE IZ 0
        I HAS A ORDEREDLIST IZ A BUCKET
        IM IN UR LOOP
                DEPTREE, O RLY?
                        NO WAI, GTFO
                OIC
                BTW MAEK LIST OF ZERO DEP
                I HAS A SHOE IZ 0
                I HAS A STUF IZ A BUCKET
                IM IN UR LOOP UPPIN UR SHOE
                        I HAS A ELEM IZ GIMME SHOE OUTTA DEPTREE
                        ELEM, O RLY?
                                NO WAI, GTFO
                        OIC
                        BTW ELEM IZ [task,[dep,...]]
                        I HAS A DLST IZ GIMME 1 OUTTA ELEM
                        DLST, O RLY?
                                NO WAI, PUT ELEM IN MAH STUF
                        OIC
                IM OUTTA UR LOOP
                BTW STUF IS NODEP LIST
                STUF, O RLY?
                        NO WAI
                                CYCLE IZ 1
                                GTFO
                OIC
                BTW IM NOT GUNNA MAEK SORT N LULZCODE K
                STUF IS MAEK STUF KEWL
                BTW THIS IS BUILT-IN LIST SORT KTHX
                I HAS A CHO IZ GIMMEH 0 OUTTA STUF
                PUT CHO IN MAH ORDEREDLIST
                BTW NEED TO REMOVE FROM DEPENDANCIES
                SHOE IZ 0
                IM IN UR LOOP UPPIN UR SHOE
                        I HAS A ELEM IZ GIMME SHOE OUTTA DEPTREE
                        BTW ELEM IS SUMTHIN ELSE
                        ELEM, O RLY?
                                NO WAI, GTFO
                        OIC
                        I HAS A DLST IZ GIMMEH 1 OUTTA ELEM
                        TAKE CHO OUTTA DLST
                IM OUTTA UR LOOP
        IM OUTTA UR LOOP
        BTW CYCLE OR ORDEREDLIST
        CYCLE, O RLY?
                YA RLY, VISIBLE "cycle"
                NO WAI
                        IM IN UR LOOP UPPIN UR CYCLE
                                BTW RECYCLE VARS
                                I HAS A ELEM IZ GIMME CYCLE OUTTA ORDEREDLIST
                                ELEM, O RLY?
                                        NO WAI, GTFO
                                OIC
                                VISIBLE ELEM
                        IM OUTTA UR LOOP
        OIC
KTHXBAI

Yep, that’s not LOLCODE, it’s LULZCODE. A corruption of LOLCODE, because I couldn’t be arsed to conform to their overly loose shitty standards.

Now all that’s left is to write the interpreter for it, lol. Fucking brutal.

Comments are off for this post

(Untitled)

January 22nd, 2008 | Category: Random

mips-pipeline-sm.png

Comments are off for this post

Next Page »