The random rantings of a concerned programmer.

Archive for January, 2008

(Untitled)

January 30th, 2008 | Category: Random

1201564967277.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.

1201584852261.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 »