code logs -> 2007 -> Sat, 20 Oct 2007< code.20071019.log - code.20071021.log >
--- Log opened Sat Oct 20 00:00:26 2007
00:34 Netsplit DeepThought.NY.US.Nightstar.Net <-> Blargh.CA.US.Nightstar.Net quits: @Thaqui
00:34 Netsplit over, joins: Thaqui
00:34 mode/#code [+o Thaqui] by ChanServ
01:09 Vornicus [~vorn@ServicesOp.Nightstar.Net] has quit [Quit: Leaving]
01:10 Vornicus [~vorn@64.252.83.ns-12990] has joined #code
01:10 mode/#code [+o Vornicus] by ChanServ
02:48 McMartin [~mcmartin@Nightstar-15024.dsl.pltn13.sbcglobal.net] has quit [Quit: Reboontu]
03:02 McMartin [~mcmartin@Nightstar-15024.dsl.pltn13.sbcglobal.net] has joined #code
03:02 mode/#code [+o McMartin] by ChanServ
03:02 Syloq [Syloq@NetAdmin.Nightstar.Net] has joined #code
03:03 Syloq is now known as Syloqs-AFH
03:07 Netsplit Null.Nightstar.Net <-> Blargh.CA.US.Nightstar.Net quits: @Thaqui
03:08 Netsplit over, joins: Thaqui
03:08 mode/#code [+o Thaqui] by ChanServ
03:25 Syloqs-AFH [Syloq@NetAdmin.Nightstar.Net] has quit [Ping Timeout]
03:36 Syloq [Syloq@NetAdmin.Nightstar.Net] has joined #code
03:37 Syloq is now known as Syloqs-AFH
03:41 Syloqs-AFH [Syloq@NetAdmin.Nightstar.Net] has quit [Ping Timeout]
04:53 Syloq [Syloq@NetAdmin.Nightstar.Net] has joined #code
04:54 Syloq is now known as Syloqs-AFH
05:41 Thaqui [~Thaqui@Nightstar-26433.jetstream.xtra.co.nz] has left #code [Leaving]
07:57 Vornicus is now known as Vornicus-Latens
08:21 You're now known as TheWatcher
09:00 GeekSoldier|pub [~Rob@Nightstar-5396.pools.arcor-ip.net] has joined #code
09:00 GeekSoldier|pub is now known as GeekSoldier
09:07 gnolam [lenin@Nightstar-10613.8.5.253.static.se.wasadata.net] has joined #Code
09:07 mode/#code [+o gnolam] by ChanServ
09:30 You're now known as TheWatcher[afk]
09:52 ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has quit [Operation timed out]
09:52 ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has joined #code
09:52 mode/#code [+o ToxicFrog] by ChanServ
11:48 gnolam is now known as gnolameeting
13:02
<@AnnoDomini>
Hm. I wonder - is it possible to set up a specific 404 page for different portions of a website, under Apache?
13:04
< GeekSoldier>
Ithink I've seen it done.
13:06
<@jerith>
AnnoDomini:
13:06
<@AnnoDomini>
Whaaaat?
13:07
<@jerith>
AnnoDomini: It is. I can't remember how, though.
13:09 * AnnoDomini ponders just how to delete a specific line in a textfile from mIRC.
13:11
<@jerith>
system("sed -i /path/to/text/file '/regex to match line/d'");
13:12
<@AnnoDomini>
That's not mIRC.
13:12
<@jerith>
Does mirc let you shell out?
13:13
<@jerith>
I'm sure there's a cygwin sed...
13:13
<@AnnoDomini>
Shell out? Que?
13:14
<@jerith>
Run an external program.
13:15
<@AnnoDomini>
Don't think so.
13:40 You're now known as TheWatcher
14:36
<@ToxicFrog>
/exec?
14:36
<@ToxicFrog>
I'm fairly sure it does, since I've seen mIRCscript worms that exploit that capability
15:20
<@AnnoDomini>
Hrm. It seems that I can overwrite. Any idea how to use overwriting to delete things?
15:21
< MyCatVerbs>
Heh. You can certainly truncate. :)
15:22
<@AnnoDomini>
Hm. I just might skip this step.
15:22
<@AnnoDomini>
Call it a feature.
15:36
<@AnnoDomini>
Hm. The memo archive shouldn't trigger notices. I think I'll replace normal characters with nearequivalents that aren't allowed as nicknames.
15:59 * AnnoDomini yays at a custom multimemo script. Now to hook it up to a trigger.
16:00
<@jerith>
http://programming.reddit.com/info/5yg9s/comments/c029p5m?context=1
16:08
<@AnnoDomini>
Yay. It works. Now any number of people can receive memos from me, not just one at a time.
16:14
<@AnnoDomini>
jerith: Hilarious.
16:25 * MyCatVerbs wonders what the general consensus among proggit readers is on qwe1234.
16:26 * jerith seldom reads comments.
16:43
<@AnnoDomini>
Hm. In sign-magnitude notation, it is easy to obtain the modulus of a binary number - simply by doing a left shift and then a right shift. Does this also hold true for 2C numbers?
16:45
< MyCatVerbs>
Nope.
16:46
< MyCatVerbs>
-1 in sixteen-bit 2C == 0xffff. Not what you're after at all.
16:46
< MyCatVerbs>
You need to negate iff the high bit is set. In software you usually just do abs(a).
16:47
<@AnnoDomini>
Just negate? Okay.
16:47
< MyCatVerbs>
As in, invert then add one.
16:47
<@AnnoDomini>
Ah.
16:47
< MyCatVerbs>
I think x86 has a single instruction to do that, for various sizes of integer.
16:50
<@AnnoDomini>
Well, this isn't x86.
16:50
< MyCatVerbs>
What is it?
16:51
<@AnnoDomini>
Am2900.
16:53 * MyCatVerbs looks that up.
16:54
< MyCatVerbs>
...what? Roll-your-own-ALU?
16:54
<@AnnoDomini>
Pardon?
16:55
< MyCatVerbs>
You're building your own hardware?
16:56
< MyCatVerbs>
Hrmn. Those must've been blazingly fast, back in the day.
16:57
<@AnnoDomini>
We're just beginning to muck with this. I wouldn't know where to begin in making a processor.
16:57
< MyCatVerbs>
Heh.
17:03
<@AnnoDomini>
Let it be noted that I frown upon the teaching methods implemented in the two courses about assembler programming. "U can has simulator. I can has 150 line program next week? Bai, cya then."
17:05
<@ToxicFrog>
On the 6812, assuming you have it in A, it's nega; inca;
17:11
< MyCatVerbs>
ToxicFrog: what? Integer negation is two instructions?
17:12 You're now known as TheWatcher[afk]
17:13 * AnnoDomini is reminded of "What! A human in a Precursor service vehicle?"
17:35
<@ToxicFrog>
Yes,.
17:35
<@ToxicFrog>
A bitwise NOT, then you add one.
17:37 * AnnoDomini twirls his moustach as he reads what he'll need to do on the next Computer Architecture class, on Monday.
17:37
<@AnnoDomini>
Does anyone know how a 8086 physical (effective) address is constructed?
17:38
<@ToxicFrog>
Heh. We finished designing the instruction set last week, and now have two weeks to finish designing the CPU internals.
17:38
<@ToxicFrog>
No clue!
17:56
< MyCatVerbs>
AnnoDomini: the original 8086? I think that just used raw physical addresses.
17:56
<@AnnoDomini>
Explain, please?
17:56
< MyCatVerbs>
ToxicFrog: why not have just one instruction for it?
17:56
< MyCatVerbs>
AnnoDomini: as in, no mmap() syscalls. I thought the 8086 did literally *no* address translation? Might be wrong.
17:57
<@ToxicFrog>
MyCatVerbs: because the 6812 is a tiny, tiny thing with no explicit support for signed math?
17:57
<@ToxicFrog>
By tiny, we're talking one accumulator, two index registers, SP, PC, and eight flag bits.
17:57
<@ToxicFrog>
And under 300 instructions.
17:57
< MyCatVerbs>
ToxicFrog: nice.
17:58
<@AnnoDomini>
MyCatVerbs: I meant, do you know how the physical is done? I have no idea what this is about.
17:58
<@ToxicFrog>
Which is still stupid huge compared to the one we're designing (7 registers, PC, 4 flag bits, 21 instructions)
17:59
< MyCatVerbs>
AnnoDomini: what? Physical addresses are the numbers that you stick on the address bus when you're telling the RAM what to hit you up with next.
18:01
<@AnnoDomini>
Okay. But I'm a complete neophyte. As I said, they just give us a simulator and tell us to deliver a completed program. We barely get taught anything at all. This teacher is nice enough to give us a 'what you need to know' paper. The paper says we need to know how 8086 physical addresses are constructed. I do not actually know what that means. :/
18:01 Vornicus-Latens [~vorn@Admin.Nightstar.Net] has quit [Ping Timeout]
18:02
< MyCatVerbs>
Oh. Perhaps it's something more complicated then.
18:03
<@AnnoDomini>
A more literal translation is "the way of making physical addresses (effective addresses) in the 8086 processor".
18:05
< MyCatVerbs>
Perhaps you might be able to find an 8086 manual somewhere.
18:06
< MyCatVerbs>
Oh, wait, no.
18:06
< MyCatVerbs>
8086 has the 20-bit-addressing trick.
18:07
<@AnnoDomini>
Oh?
18:07 * AnnoDomini goes AFW for a while.
18:08
< MyCatVerbs>
Go find a CPU manual, srsly.
18:10 You're now known as TheWatcher
18:13 AnnoDomini [AnnoDomini@Nightstar-29290.neoplus.adsl.tpnet.pl] has quit [Ping Timeout]
18:19 AnnoDomini [AnnoDomini@Nightstar-29265.neoplus.adsl.tpnet.pl] has joined #Code
18:19 mode/#code [+o AnnoDomini] by ChanServ
18:26
<@AnnoDomini>
Okay.
18:30
<@AnnoDomini>
My google-fu is failing, so far. :(
18:38
<@ToxicFrog>
Wait, they have you using the 08086?
18:39
<@ToxicFrog>
You poor, poor soul
18:40
<@AnnoDomini>
ToxicFrog: No. We're emulating a 8086 on a Am2900 simulator.
18:42 * MyCatVerbs shudders.
18:42
< MyCatVerbs>
That is nasty.
18:43
<@ToxicFrog>
And this is better...how?
18:47
< MyCatVerbs>
This?
18:51 gnolameeting is now known as gnolam
20:06
<@AnnoDomini>
It is not better.
20:15 Vornotron [~vorn@Admin.Nightstar.Net] has joined #code
20:15 Vornotron is now known as Vornicus
20:43 Forj [~Forj@Nightstar-2310.ue.woosh.co.nz] has joined #code
20:43 mode/#code [+o Forj] by ChanServ
20:55
<@gnolam>
8086? Your professors are seriously /evil/.
21:05 Chalcedon [~Chalcedon@Nightstar-2310.ue.woosh.co.nz] has joined #code
21:05 mode/#code [+o Chalcedon] by ChanServ
21:14 Chalcedon [~Chalcedon@Nightstar-2310.ue.woosh.co.nz] has quit [Ping Timeout]
21:16
<@ToxicFrog>
Yeah.
21:16
<@ToxicFrog>
We got to use the 68K.
21:21 * gnolam too.
21:21
<@gnolam>
And the 68k is a schweet architecture.
21:23
<@jerith>
We did 8052 and PIC.
21:23
<@jerith>
Umm, 805
21:23
<@jerith>
Gah!
21:23
<@jerith>
*8051*
21:24
<@gnolam>
I bid 8053!
21:24
<@jerith>
Both are pretty horrible, the latter moreso.
21:24
<@jerith>
AVRs are cool, though.
21:24
<@gnolam>
Yeah. I much prefer AVR to PIC.
21:25
<@gnolam>
The AVR instruction set is a bit bloated, but at least it's not the plain /mess/ that PIC is.
21:26
<@gnolam>
(The Killer Robot uses AVRs exclusively)
21:29
<@ToxicFrog>
AVR?
21:29
<@jerith>
Atmel's 8-bit micro.
21:32 Inner [Inner@Nightstar-26446.24-151.libero.it] has joined #Code
21:35 Inner [Inner@Nightstar-26446.24-151.libero.it] has quit [Quit: ]
21:42 Vornicus [~vorn@ServicesOp.Nightstar.Net] has quit [Ping Timeout]
21:51 GeekSoldier is now known as GeekSoldier|bed
23:28
<@AnnoDomini>
It's funny how /fseek says it fails when I attempt to point it at line $lines+1, but somehow does what I want it to - sets the pointer as far as it can, so I can append stuff without fuss.
23:33
<@ToxicFrog>
...odd. That doesn't match the behaviour of fseek or lseek.
23:33
<@AnnoDomini>
Are we both talking about mIRC?
23:36
<@ToxicFrog>
Well, I'm talking about the underlying system calls /fseek is almost certainly implemented in terms of - fseek(3) and lseek(2)
23:36
<@ToxicFrog>
Although, on further considering, fseek() doesn't specify what happens if you try to seek past the end, and the windows equivalent of lseek() probably doesn't have the same contract, so.
23:36
<@AnnoDomini>
What's lseek?
23:38
<@ToxicFrog>
The low-level system call that fseek() is a wrapper for.
23:39
<@ToxicFrog>
According to the man page, attempting to seek past the end of a device will fail, but attepting to seek past the end of a file will succeed, and should you write while the pointer is positioned past the end, the intervening space will be filled with nulls.
23:39
<@AnnoDomini>
I see. What I wanted for the fseek to do was to go to the last line. Notably, there is a $crlf at the end of the penultimate line, so I figured it should find the last one I'm able to put a cursor on.
23:43 You're now known as TheWatcher[T-2]
23:46 You're now known as TheWatcher[zZzZ]
--- Log closed Sun Oct 21 00:00:33 2007
code logs -> 2007 -> Sat, 20 Oct 2007< code.20071019.log - code.20071021.log >