00:01:10 Oh dear god, there's a heavy metal version of Pictures at an Exhibition. 00:06:59 Of course there is. 00:07:10 There's a heavy metal version of the Teletubbies theme, I'm sure :P 00:07:34 -!- Phantom_Hoover_ has quit (Remote host closed the connection). 00:08:07 "99% of all California farms are family owned." I like how they carefully chose the metric such that it would sound good. 00:08:13 Change that to farmLAND and it would be awful. 00:12:20 lol 00:15:48 Who cares whether it's families or corporations who own farmland? 00:16:18 The same kind of people who like froo-froo commercials where folksy idiots talk about how they more or less waste their life in an extremely inefficient but subsidized industry. 00:16:31 Gregor: <3 00:20:01 -!- FireFly has quit (Quit: swatted to death). 00:37:37 -!- poiuy_qwert has quit (Ping timeout: 245 seconds). 00:41:54 i suddenly want to write a shell script which creates a directory, copies itself there, cd's there, and execs that copy 00:46:00 sounds trivial 00:46:07 -!- alpha-aquilae has joined. 00:46:29 -!- poiuy_qwert has joined. 00:47:35 I wonder how long a script like that can keep going 00:47:35 it is 00:47:48 but so is eating, and i have the urge to do that all the time 00:54:38 Not long, most systems have pathname limits. 00:54:43 Your PWD would get too big. 00:55:10 boring 00:55:32 could you e.g. end up having created a path too long for 'rm' though? 00:55:55 -!- alpha-aquilae has left (?). 01:11:01 olsner: No. 01:16:15 Not long, most systems have pathname limits. 01:16:16 Your PWD would get too big. 01:16:16 symlinks 01:16:39 Linux has a 4k pathname limit. 01:16:44 Symlinks still have to be resolved. 01:16:50 Gregor: well, true. 01:17:02 Gregor: pathname limits are lame :( 01:17:11 elliott: Then use HURD. 01:17:25 Gregor: HURD people argue about what to define PATH_MAX as :-) 01:17:37 #define PATH_MAX UINT_MAX /* i would be fine with this */ 01:18:03 anyone got any ideas what the icon for an interpreter of a language named Zetaplex should look like? 01:18:12 elliott: That would be REALLY bad. 01:18:20 Gregor: Why? 01:18:20 elliott: Since a lot of people use char path[PATH_MAX]; 01:18:25 Gregor: Oh, true. 01:18:28 Gregor: Their fault. 01:18:51 pikhq: The job of a non-revolutionary system is to run more or less every program that isn't completely and *utterly* written by crack-addled crack monkeys :P 01:18:52 Let's just subtract UINT_MAX from esp! 01:18:55 I know, I know, that doesn't help Hurd build anything. 01:19:04 Uhh, nothing happened. 01:19:04 FUCK 01:19:09 Gregor: oh wow 01:19:16 Gregor: it'd become char path[0]! 01:19:22 Gregor: and as we all know, [0] == variable length array! 01:19:29 Gregor: therefore path is dynamically allocated Q.E.D. 01:19:39 * Sgeo wonders what type [Right, Left] is 01:19:40 Uhhhh 01:19:48 UINT_MAX isn't 0... 01:20:05 * Sgeo hits self for failing to work it out 01:20:06 poiuy_qwert: the logo from http://www.zetatalk.com/ maybe? 01:20:19 Gregor: No, but. 01:20:23 Gregor: Let's just subtract UINT_MAX from esp! Uhh, nothing happened. 01:20:27 elliott: Hurd is a revolutionary system that pretends not to be. 01:20:32 My logic is impeccable. 01:20:35 elliott: And is written *by* crack-addled crack monkeys. 01:20:39 elliott: 'cuz it'd have to align the stack. But that's at the backend, not the frontend. 01:20:49 Sgeo: I... "list of directions"? 01:20:49 catseye: lol :P 01:20:58 Gregor: And, fun fact, allocating 0 bytes doesn't create a variable array either. ZOMG ZOMG ZOMG 01:21:03 :P 01:21:05 TOUCHE SIR 01:21:19 Tell that to lambdabot 01:21:43 Sgeo: [a -> Either a a] 01:21:54 Yeah, I know 01:21:59 It's sad I needed to ask the bot 01:22:01 Sgeo: I did not know this was Haskell 01:22:04 poiuy_qwert: the logo from http://www.zetatalk.com/ maybe? 01:22:06 this is the most amazing 01:22:46 catseye: oh cool she invented nibiru 01:23:12 "Lieder describes herself as a contactee with the ability to receive messages from extra-terrestrials from the Zeta Reticuli star system" ;; hands up who thinks she decided she was hearing aliens first and *then* looked up a random star system 01:23:14 and asked the aliens for confirmation 01:25:33 a UINT_MAX sized array (assuming uint and pointers have the same size) would effectively be a -1 sized one :) 01:25:54 hmm, unless the actual allocation is aligned by the compiler 01:26:33 it's all fun and games until you think of the details 01:26:37 i was thinking of making the icon relate to http://en.wikipedia.org/wiki/Zeta 01:28:23 poiuy_qwert: a zetaplex is clearly the Riemann zeta function 01:28:25 it's zeta, and complex 01:28:47 poiuy_qwert: failing that, just put zetas on every face of a given 3d solid more than a cube 01:28:51 poiuy_qwert: zetaplex 01:31:47 i really like those ideas, but then again i also need to be able to make it, and it should be recognizable at 16x16 or 32x32 :( 01:32:27 Dear spammers: Why would I want any sex product where the boy's fingers were frozen off? 01:32:45 whut 01:32:50 im thinking of just doing " Zζ " like in the image on wikipedia. so easy 01:32:56 Subject: Boy's fingers frozen off 01:33:16 Body (minus URL): Let the ladies gossip about the wonderful intercourse they had with you 01:34:30 D-8 01:35:26 xD 01:36:44 pikhq: http://en.wikipedia.org/wiki/Pana_Wave 01:36:53 japan's cults are AWESOME 01:38:31 Shouldn't they move to Antarctica during Antarctica's winter? 01:38:39 That will help them avoid electromagnetic radiation 01:44:35 catseye: [[Roughly a week before the supposed arrival of Planet X, Lieder appeared on KROQ radio in Los Angeles, and advised listeners to put their pets down in anticipation of the event. When asked if she had done so, she replied that she had, and that "The puppies are in a happy place." She also advised that "A dog makes a good meal".]] 01:45:36 wow 01:46:09 Did anyone else put their pets down? 01:46:22 Sgeo: i don't know but lmao 01:46:27 she just wanted an excuse to eat her dog 01:46:29 Also, call me an asshole, but I just don't quite feel the same about non-human animals that I do about humans 01:46:36 catseye: [[After the 2003 date passed without incident, Lieder said that it was merely a "White Lie ... to fool the establishment,"[10] and said that to disclose the true date would give those in power enough time to declare martial law and trap people in cities during the shift, leading to their deaths.]] 01:46:51 "Everyone is going to DIE! Eat your dog! ...ha ha, only kidding. God, Woof was delicious." 01:58:01 pikhq: What features does my boot sector need? :-P 01:58:09 NOTHING 01:58:16 pikhq: It already has nothing! 01:58:27 pikhq: (Well, okay, it does have a diagnostic output that even lets you tell how slow your floppy drive is.) 01:58:35 pikhq: boo(o * number of retries made)t! 01:58:46 nothing if it's never even run 01:58:55 bo if it hangs while trying to reset the disk the first time 01:59:06 boo... if it keeps trying to load or hangs or whatever 01:59:11 boo(o...)t! if all has gone well 01:59:51 omg zzo38 would love the hurd logo 01:59:54 it's written in metafont 02:00:07 bo if it hangs while trying to reset the disk 02:00:09 ... 02:00:11 http://www.gnu.org/software/hurd/hurd/status/hurd-fvwm-screenshot-2009-11-12.png 02:00:12 HUUUUURD 02:00:18 FRENCH HIRD FUCK YEAH 02:00:21 *HURD 02:02:17 elliott: i think my logo shall be http://oi51.tinypic.com/dy6c74.jpg 02:03:00 poiuy_qwert: i like it but -- i'd make the text a little smaller so that it doesn't push the edges like that, and also a little higher -- it looks a bit bottom-heavy right now, even though it isn't 02:03:03 just my opinion though 02:03:06 poiuy_qwert: also, png, not jpg, man! :) 02:03:11 Gregor: "Olaf Buddenhagen, 2009-06-09 02:03:11 I have been using the Hurd for most of my everyday work for some two years now" 02:03:15 Gregor: guess we've found out your REAL name 02:03:19 *now." 02:03:23 catseye: can you believe it? ^ 02:03:36 "One particular problem for desktop use is the fact that while X does work, it works very poorly -- it's not only slow and jerky all the time, but also tends to lock up completely. (At least with the local socket transport... Haven't tried whether forcing TCP works better.)" 02:03:36 elliott: ...??? 02:03:41 Gregor: you used HURD 02:03:45 this guy has used hurd for two years 02:03:46 QED 02:03:52 nobody uses hurd, so you must be the only one 02:04:01 i like how they're finding out that 02:04:01 elliot: i'll try your ideas. and it is png, it just says jpg on the image host (i always use png) 02:04:02 shock horror 02:04:02 -!- augur has quit (Remote host closed the connection). 02:04:10 implementing unix on top of pure message-passing daemons 02:04:16 all components in separate processes 02:04:17 -!- augur has joined. 02:04:17 is not the quickest thing ever 02:04:39 -!- storkbot has joined. 02:04:41 * elliott stabs poiuy_qwert for misspelling his name 02:04:44 ...but ok :P 02:05:29 Gregor: #define PATH_MAX ] = dynamic_path(); ""[ 02:05:31 Gregor: OR SOMETHING 02:06:17 lawl 02:06:28 [[The Hurd servers themselves are multithreaded, so they should be able to take benefit of the parallelism brought by SMP/Multicore boxes. This has however never been tested yet because of the following. 02:06:28 Mach used to be running on SMP boxes like the ?http://en.wikipedia.org/wiki/Intel iPSC/860 , so has an infrastructure for running on them. It has however not (yet) been ported to nowadays' SMP standards like ACPI etc. 02:06:29 That is why for now GNU/Hurd will only uses one logical processor (i.e. one core or one thread, depending on the socket type).]] 02:06:40 Gregor: "Everything is an independent server so it can all be run in parallel! Note: Only one logical CPU supported." 02:06:53 Why yes, Hurd IS a joke of an OS! 02:07:06 Gregor: *GNU! 02:07:07 *kernel! 02:07:10 An kernel. 02:07:26 Why yes, Hurd IS a joke of a Gnu! 02:30:35 -!- storkbot has quit (Remote host closed the connection). 02:32:37 -!- storkbot has joined. 02:37:06 -!- storkbot has quit (Remote host closed the connection). 02:37:24 -!- storkbot has joined. 02:37:31 -!- augur has quit (Remote host closed the connection). 02:37:53 -!- augur has joined. 02:45:00 -!- storkbot has quit (Ping timeout: 276 seconds). 02:47:07 Why is it that IE must make web design so damned hard? 02:47:21 pikhq: it doesn't, it only makes web design for IE hard 02:49:56 http://www.boingboing.net/2010/10/30/you-cant-tell-your-u.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+boingboing%2FiBag+%28Boing+Boing%29&utm_content=Twitter 02:50:00 *sigh* 02:50:14 Stupid awesome ideas spoiled by reality and Microsoft's decisions 02:50:56 that awesome idea looks like an ergonomic nightmare 02:51:44 That too :( 02:51:51 But wires can fix tha 02:51:52 that 02:52:35 also: in no way more anonymous 02:52:38 in fact less secure 02:52:43 and location-specific 02:52:44 it's a stupid idea 02:54:55 -!- storkbot has joined. 02:56:22 But it's FUN 02:56:31 -!- BeholdMyGlory has quit (Remote host closed the connection). 02:56:37 Except for stupid autorun and that one piece of malware that doesn't even require autorun 02:57:13 -!- storkbot has quit (Remote host closed the connection). 02:59:42 -!- storkbot has joined. 03:01:55 -!- storkbot has quit (Remote host closed the connection). 03:02:13 pikhq: The problem with my boot sector is that all the booting fun happens in the OS itself :( 03:08:20 -!- Mathnerd314 has quit (Ping timeout: 240 seconds). 03:11:43 Opera forgot my settings! 03:11:46 FFFFFFFFFFFFFUUUUUUUUUUUUUUUUUUUU 03:11:58 That's it 03:12:02 That's the last straw 03:13:01 -!- augur has quit (Ping timeout: 252 seconds). 03:14:25 Sgeo: I would think the last straw would be shortly after installing Opera, when you realize it's not a good browser. 03:14:43 It handled Reddit and ANGEL nicely! 03:14:52 And the SL Marketplace login 03:15:01 Opera > Chrome with those three sites 03:15:05 Gregor: It's amazing how far Opera's got on having awesome people as employees and claiming to be super-standards-compliant. 03:16:50 Chrome still has its usual Reddit issues :( 03:18:39 -!- augur has joined. 03:18:42 Gregor: that is but one of many straws 03:19:39 Gregor: Are there any good browsers? 03:19:52 Chrome absolutely SUCKS with Reddit 03:19:58 pikhq: Even IE9 is better than Opera. 03:20:06 Has Firefox improved any? 03:20:14 Is Firefox any less of a hog these days? 03:20:19 No. 03:20:21 Basically all of them fail hardcore at many cases of 100% valid HTML 4. 03:20:38 Sgeo: Firefox 4 appears to be less of a hog, but that's in beta. 03:20:54 chrome is fine with reddit 03:20:56 absolutely fine 03:21:07 elliott, no. It is not. 03:21:12 yes. yes it is 03:21:14 I try to open a bunch of comment tabs 03:21:23 and? 03:21:26 The tab with the main page freezes while the others load 03:21:31 no it doesn't 03:21:36 your machine/compilation/whatever sucks 03:21:47 This happened on the old laptop too 03:21:54 Sgeo: E_WORKSFORME 03:22:01 Sgeo: E_HERES_A_NICKEL_KID_GO_BUY_A_REAL_COMPUTER 03:22:15 Running at 1.2 ghz, ultra-low voltage, and chrome handles a hundred tabs just fine 03:22:20 (I use Midori now, but I did use Chrome.) 03:22:29 Maybe it's an Internet connection speed thing. Slow down your Internet connection, see if the issue comes up 03:22:35 no. 03:22:36 no it isn't 03:22:40 internets do not work like that 03:22:59 I mean, it would be a browser fault 03:23:04 Sgeo: Didn't happen when my packets went to orbit and back. 03:23:07 But might not be noticable on a faster connection 03:23:12 pikhq, huh 03:23:30 Then why TF is this happening to me? 03:23:51 -!- augur has quit (Ping timeout: 276 seconds). 03:23:56 Chrome's UI is annoying, Firefox is a hog unless you have a computer made of COMPUTER, Safari is fine except for the Applism that makes its UI even worse than Chrome, IE9 is actually pretty good if you can get it into its magical standards-compliance mode, Opera is crazy-fast and light but painfully uncompliant, uhhh, what am I missing? 03:24:11 Well, yeah, then there's a whole family of WebKit browsers that aren't Safari, and those are mostly OK. 03:24:24 they're usually unpolished though 03:24:33 True. 03:24:51 Gregor: you forgot the faux-minimalist Arch user penis-enhancing non-browsers that try to be as unusable as possible because of the idea that this is the Unix philosophy 03:25:07 I don't mind Chrome's UI 03:25:07 I choose not to believe they exist :) 03:25:18 I do mind its issues with Reddit 03:25:24 I'm back to using Chrome, because it works without crashing. 03:25:29 Does Chrome have a safe mode I can try? 03:25:45 Though its non-standard UI *is* annoying. 03:26:19 Chrome is nice if there's a theme that integrates it with your DE. 03:26:23 e.g. Ubuntu's default theme. 03:26:58 There's a number of annoyances in Midori's UI. 03:27:06 For instance, its behavior when you close a tab. 03:27:09 pikhq: also, it crashes all the time 03:27:19 It always goes to the tab to the right. 03:27:25 also, Ctrl+N new window opens in background if you have tabs-open-in-foreground disabled 03:27:26 Always. 03:27:34 pikhq: Even if you have no tab to the write? :P 03:27:35 *right? 03:27:44 elliott: Then and only then does it go to the left. 03:28:22 This is especially annoying when you would like to *go back to the tab you were on previously*. 03:28:53 indeed 03:29:14 Also, its key binding for switching tabs is annoying. 03:29:16 Must 03:29:19 Dehabit 03:29:21 Ctrl-Shift 03:29:25 Ctrl-Pgup and Ctrl-Pgdown? WHY WOULD I WANT THAT 03:29:38 pikhq: i've actually got used to that :P 03:30:40 Also, it was doing this annoying thing where it would actually jump down about a screenful upon the page fully loading. 03:34:20 Bizzare scrolling behavior is Opera's forte 03:35:00 And incredibly bizzare text selection behavior 03:35:27 The always opening new tab to the right of current one was nice, though 03:38:30 don't they all do that now, though? 03:38:43 Opera does that even on Ctrl-T 03:38:49 Which I've found handy on occasion 03:46:24 * Sgeo goes to download Factor 03:46:27 It's been too long 04:03:56 elliott: Which album of Pink Floyd's was it that you said was only any good because of a single song on it? 04:05:09 pikhq: Meddle, because of Echoes. 04:05:12 Funny, I just mentioned Echoes. 04:05:19 Aaah. 04:05:33 pikhq: The only even semi-decent song other than Echoes is One of These Days. 04:06:13 The rest are: a love song, a bad football fanboy song, a TROPICAL JAZZ SONG (not joking -- waters wrote it entirely himself, that probably explains it), and a song where A DOG BARKING FORMS THE VOCALS 04:06:40 pikhq: http://www.youtube.com/watch?v=HuOB2_u87fo 04:06:41 pikhq: DOGSONG 04:07:30 Is Who Let the Dogs Out better? 04:07:35 Yes. 04:07:37 It has structure. 04:08:16 WHO. WHO; WHO; WHO. 04:08:28 catseye: i do not think that song was composed with semicolons 04:08:29 * Sgeo actually kind of likes Who Let the Dogs Out, partially nostalgia maybe, but I have the impression that a lot of people dislike it 04:08:40 well it's a terrible song. 04:08:46 I also like what I've heard of Nickleback 04:09:04 Although the lyrics are objectionable -- I am able to hande that 04:09:17 The problem with Nickleback is not that any one song of theirs is terrible. The problem is that they don't have a second song. 04:09:21 There's one song I like that has sentimental-seeming lyrics that are really just horrible 04:09:36 (not a Nickleback song) 04:09:38 Nickleback *are* *objectively* *terrible*. 04:09:47 *ANYONE* who likes Nickelback HAS NO EARS 04:09:49 *Nickelback 04:10:32 elliott: The point I was trying to make is that they are probably the most samey group out there... 04:10:41 http://www.youtube.com/watch?v=RZrWY8s73tk The lyrics are pretty... bleh, especially when it's clear that it's abusive, but still 04:10:42 pikhq: Oh yes. 04:10:48 pikhq: And their one song is terrible. 04:10:54 elliott: They're terrible because they are far far too consistent. 04:11:14 Wait 04:11:18 Sgeo: Man, you know... Never listen to Tool. 04:11:27 Are you saying I can hear the same melody, with different lyrics??? 04:11:41 If you find it hard to *LISTEN TO A SONG* because of *SOME LYRICS*... never, ever listen to Tool. Or... or many bands 04:12:00 Although this one has nostalgia value 04:12:18 elliott, link me to a Tool song 04:12:34 Sgeo: You should just avoid music with lyrics. 04:12:34 * elliott optimises for Sgeo's squick organ 04:12:36 Sgeo: http://www.youtube.com/watch?v=WDJgKxLNsJE 04:13:02 pikhq, I like Libera. I know the music is likely religious, but it's mostly Latin, so I don't care 04:13:08 Or, well, it helps me not care 04:13:20 A 1962 Lincoln Convertible -- *that* has nostalgia value. 04:14:40 Sgeo, what do you think of Garbage? 04:14:46 I'm curious now. 04:14:51 Uhhhh? 04:15:22 The band called "Garbage", and their music, in case the context wasn't clear. 04:15:35 Never heard of them 04:15:42 Oh dear. 04:15:48 Okay. 04:23:49 we are siamese if you please 04:23:57 we are siamese if you don't please 04:24:12 catseye: xD 04:28:14 * Sgeo imagines a language where you don't have to look ahead to understand what's going on at any particular point 04:28:33 Sgeo: natural or prog 04:28:37 prog 04:28:40 easy 04:28:58 Factor doesn't count as doing it, btw 04:29:29 * elliott thinks Sgeo is confused 04:29:45 1 0 < [ stuff ] if 04:29:48 That's ANNOYING 04:29:59 Same with bi and tri 04:30:11 etc 04:30:12 well, anything with mutual recursion is going to have temporarily unresolved forward references 04:30:40 ....am I asking to kill lambdas? 04:31:05 you're sort of asking to break nesting's legs 04:32:51 * Sgeo ponders what it would take to have a thingy in Factor that enforces functional purity in marked ... words 04:33:19 Add a "this is impure" marker to words that have side effects? 04:33:45 ...Wait, how is dynamic scoping implemented in Factor? 04:33:46 i don't know to what extent Factor supports the kind of metaprogramming that would let you do that 04:36:27 YOU COULD TOTALLY DO IT IN FALCON (note: bullshit) 04:36:53 * catseye still awaits Falctorn. 04:38:15 i think maybe the thingie could be generalized 04:38:29 although "thingie" is already pretty general 04:39:47 what i mean is, (compose-with-property p x y) creates a new object z, out of x and y with property p, iff both x and y have p. 04:40:17 p being something you're born with, if you're a builtin function 04:40:24 er thingie, not function 04:41:09 then if p = functional purity... yeah 04:42:23 catseye: that's just tags, in one of my type systems 04:42:53 also could be polynomial time or something. yes it can be implemented very simply. 04:43:11 catseye: e.g. 04:43:17 print : string -> void [io] 04:43:24 then if you call print, you're [io] too 04:43:27 but you can use it as a pure value 04:43:28 so 04:43:29 print read_line 04:43:30 works 04:43:33 but it's : void [io] 04:43:41 or : void [stdin,stdout], for instance 04:43:50 elliott: ooh, interesting 04:44:05 coppro: thanks :p 04:44:13 coppro: still has creases to be edged out. or something. 04:44:26 elliott: also, you linked me to something about vertical vs. horizonal polysomethingism or whatnot a long time ago, do you have it? 04:44:37 coppro: i... maybe if you're more specific! 04:44:50 elliott: well, I have no clue what that would actually mean for something /other/ than [io], so that's why I'm intrigued 04:45:01 coppro: well, e.g. 04:45:08 modifies_state_variable $foo 04:45:11 elliott: it was about how you can easily define new operations in functional languages and new types in oo languages, but not both 04:45:15 set $foo 3 : void [modifies_state_variable $foo] 04:45:23 set $foo read_line : void [modifies_state_variable $foo, reads stdin] 04:45:25 that sort of thing 04:45:29 of course this quickly gets dependent-typey 04:45:31 coppro: ahh yes 04:45:47 coppro: let me try and find it :) 04:45:52 elliott: how does that benefit the programmer? 04:46:01 coppro: like haskell's io but less evil 04:46:04 if you call something without any tags 04:46:06 you KNOW it's pure 04:46:13 so the api defines the effects 04:46:19 not just of the pure component 04:46:24 it also specifies any statefulness 04:46:27 fully 04:46:33 elliott: hrm... smells of Java exceptions 04:46:39 not really 04:46:44 coppro: not any more than haskell's IO or State is 04:46:55 coppro: gah i'm trying to think of that article 04:47:29 grep logs ftw? 04:48:06 coppro: that's what i'm going to do :) 04:48:23 ./08.07.17:17:14:31 GRAR SCHEME GRR SGLASGJ SHITTY UNDERPOWERED TOO MINIMAL GRR RARG 04:49:16 also, the libraries are numbered. so wrong with that 04:49:36 catseye: it's so versioning 04:49:42 catseye: ABI-incompatible = new package 04:50:08 -!- rodgort has quit (Quit: Coyote finally caught me). 04:51:51 -!- rodgort has joined. 04:54:36 There is absolutely nothing wrong with so versioning aside from people being able to fuck it up. 04:57:01 pikhq: FYI, NetBSD Linux emulation does not appear to be up to the task of running Debina. 04:57:02 *Debian. 04:57:17 elliott: Aaaaw. 04:57:23 elliott: Any idea what the problem is? 04:57:33 pikhq: something thinks the kernel is too old -- probably glibc 04:58:02 pikhq: FYI, NetBSD Linux emulation does not appear to be up to the task of running Debian. // wow 04:58:24 Gregor: I MAY HAVE BEEN GETTING DEBOOTSTRAP TO WORK ON NETBSD WITH CATSEYE FOR THE PAST FEW HOURS 04:58:35 Gregor: I think I can get it to work by recompiling glibc with --enable-kernel=2.4 04:58:36 elliott: ... OH RIGHT. 04:58:39 I may have not been paying attention :P 04:58:43 Gregor: It was in /msg 04:58:46 elliott: NetBSD emulates Linux 2.4. 04:58:47 Ah 04:58:53 pikhq: Right. 04:58:56 pikhq: So I just need to recompile glibc. 04:59:03 WHICH WILL BE TOTALLY FUN 04:59:14 pikhq: Thankfully I can do it on this, my actual Debian installation, and then upload it... 05:00:24 pikhq: Hmm. GCC won't be affected, right? 05:00:41 elliott: Wait, which version of NetBSD? 05:00:45 pikhq: 5.0.2 05:00:55 pikhq: And let me tell you, NETBSD SUCKS HOLY SHIT 05:01:00 Also: dpkg. 05:01:01 Dpkg really sucks. 05:01:03 Dpkg's source code is insane. 05:01:06 It has its own malloc. 05:01:12 wait waht 05:01:14 It uses "strnlen(s,n)" which is just max(strlen(s),n) 05:01:20 what 05:01:22 And then has a portability library defining it, but that library DOESN'T WORK 05:01:31 coppro: it's a malloc without free using, uh 05:01:33 ob somethings 05:01:34 just the what you learn when beating your head against a wall like this: fantastic 05:01:43 You could wait for NetBSD 6. 05:01:46 2 [ V{ } 5 suffix! clone . ] times 05:01:47 as you can see, it has driven catseye mad 05:01:49 pikhq: OH JOY. 05:01:56 Sgeo: wth 05:02:02 It does Linux 2.6! 05:02:03 pikhq: I just want Debian/NetBSD! (Not kNetBSD, NetBSD.) 05:02:39 Drop the clone 05:03:04 suffix! adds the 5 to the empty vector 05:03:07 . prints 05:03:16 Then, next cycle, you see that the original 5 is still there 05:03:19 elliott: So, why does it have its own malloc? 05:03:30 Similar to Python's nuttiness, really 05:03:33 pikhq: because it's more efficient for some database thing... it's just based on ... obtree? no 05:03:36 oblist? no 05:03:50 obstacks 05:03:55 pikhq: http://en.wikipedia.org/wiki/Obstack 05:03:57 It's based on obstacks. 05:04:01 Sgeo: what language is that? 05:04:05 coppro, Factor 05:04:16 elliott: That's even crazier considering glibc has them. 05:04:22 you need those cycles that obstack shaves off using the heap, man 05:04:24 pikhq: It uses glibc's. 05:04:33 pikhq: It also has its own implementation of them, for compatibility. 05:04:38 pikhq: This implementation inexplicably doesn't get linked. 05:04:38 elliott: *sigh* 05:04:40 I have no idea why. 05:04:58 because crazy that's why 05:04:58 pikhq: I love the pattern of use fancy API to do something and then rewrite it with less fancy APIs for portability, but still wrap it up in the fancy API for no reason at all. 05:05:04 WHY NOT JUST CODE WITH THE PORTABLE API DUMBFUCKS 05:05:08 I don't CARE how fast dpkg is. 05:05:21 Updating Debian takes some amount of time; it could take twice as long and I would not really care one bit. 05:05:30 I highly doubt memory allocation is a bottleneck anyways. 05:05:45 Network and disk bandwidth, sure, but memory allocation? 05:05:58 pikhq: Wait, you don't have the BD-ROM release? 05:05:59 Why not?! 05:06:01 :) 05:06:59 elliott: Even then disk bandwidth would be a bottleneck. 05:07:36 pikhq: Uhh, don't you use a RamSan? 05:07:45 http://www.ramsan.com/products/4 05:07:45 No. 05:07:53 pikhq: Well that's not the recommended configuration, then! 05:07:57 We optimise for that only./ 05:08:00 s/\/$// 05:08:22 Why not optimise for a more useful usecase? 05:08:33 pikhq: Uhh, sarcasm alert? 05:08:35 Say, a stock IBM PC. 05:08:47 pikhq: I don't think that runs Linux :P 05:08:58 Are any of the 16-bit Linux ports maintained? 05:09:07 Define "maintained". 05:10:44 -!- zzo38 has joined. 05:13:24 There are no 16-bit Linux forks. Calling ELKS a Linux port is kinda silly :P 05:14:10 does uclinux run on anything <32 bit? guess not 05:14:20 Nope 05:14:23 ELKS is beyond awesome 05:14:30 isn't that the one that uh 05:14:38 uses "NOP" after an instruction to do error checking? 05:14:47 I have no idea :P 05:15:03 Gregor only runs Hurd you see 05:15:45 are there any 16-bit NetBSD ports? there so must be 05:16:08 I actually doubt even that. 05:16:36 +Compiling the GNU C library yourself requires a lot of resources. For 05:16:36 +a complete build using dpkg-buildpackage you need at least 750MB free 05:16:36 +disk space and at least 16MB of RAM and 32MB of swap space (if you 05:16:37 +have only that much you're better off not running X at the same 05:16:37 +time). Note that the C library on the Hurd is also somewhat larger: 05:16:37 +you'll need over 800MB of free disk space to build Hurdish packages. 05:16:38 (It actually doesn't support all that many CPUs, just a lot of hardware architectures) 05:16:39 catseye: ^ 05:17:38 57 platforms, 15 CPUs. 05:18:14 yehhmm 05:18:16 Which makes it support more CPUs than any single Linux distro except maybe Linux From Scratch. 05:18:17 pikhq: Where we count big and little endian versions of things as different CPUs, and nearly-identical 32- and 64-bit things as different CPUs. 05:18:21 pikhq: Really it supports like 10 :P 05:18:28 (though Linux itself supports more CPUs) 05:19:47 Gregor: 10 cpus, what a lame accomplishment :P 05:20:06 Is the GNU C library really large? 05:20:19 elliott: peanuts! 05:20:22 zzo38: No, it is tiny. 05:20:29 A lot of GNU packages are extra-large 05:20:34 Not libc. 05:20:36 The libc is tiny. 05:20:37 -!- augur has joined. 05:20:44 As small as the BSD libcs. 05:20:53 Note: Lies. 05:20:55 elliott: Then why does it require lot of resources to compile it? 05:21:07 is 750M of disk space really a lot? 05:21:07 zzo38: The C compiler is very complicated and does clever things with the code. 05:21:16 You could compile it faster and with less space using another compiler. 05:21:24 is 32M of swap space really a lot? 05:22:10 I might suggest writing the C library using assembly language for the processor you are on, and use the C library written in C only for computers that do not have the one written in assembly language. 05:22:29 zzo38: A lot of glibc is assembly. 05:24:34 elliott: while you are compiling that, i will screw around with building another netbsd-on-a-stick! 05:24:54 catseye: wooooooo 05:25:21 A lot of these functions could be inlined assembly codes by C macros. 05:25:35 Gregor: Please tell me what it is that makes Debian users so pissy X_X 05:25:49 Typical #debian intercourse: 05:25:51 how do I-- 05:25:54 !dpkg dpkg dpkg 05:25:57 [unhelpful] 05:26:00 ok, but how do I 05:26:03 READ THE MOTHERFUCKING FACTOID 05:26:08 elliott: They are on IRC :P 05:26:15 -!- augur has quit (Ping timeout: 272 seconds). 05:28:35 It dawns on me that the word "factoid", by its construction, should refer to something which resembles a fact, but is not actually one. (cf. humanoid) 05:29:14 factoid is a sillyism of fact 05:31:25 Quasimetafactoid 05:31:49 And, what is a quasimetafactoid? 05:37:41 --enable-kernel=2.4... 05:38:23 pikhq: You used Gentoo. 05:38:27 pikhq: How long does glibc take to compile? 05:38:32 elliott: Hour or so. 05:38:36 pikhq: Oh joy. 05:38:39 pikhq: On what kind of machine? 05:38:57 elliott: 3-core AMD, ~2.6GHz. 05:39:01 pikhq: HAHAHAHA 05:39:07 pikhq: 2-core Intel Core 2, 1.3 GHz. 05:39:08 what elliott said 05:39:17 pikhq: SO. LOOKING. FORWARD. TO THIS. 05:39:33 elliott: A lot of the time used comes from their usage of recursive make. 05:39:45 pikhq: You could propagandise ANYWHERE :p 05:39:48 *:P 05:40:08 elliott: It's the most retarded use of recursive make ever. 05:40:10 --without-selinux \ 05:40:11 $(call xx,with_headers) $(call xx,extra_config_options)) 05:40:12 HAHA FOUND YOU 05:40:16 --enable-kernel=2.4 05:40:21 Or does it have to be 2.4.0? 05:40:38 elliott: Make on a fully built glibc tree can take 10 minutes just to realise it doesn't have to build anything. 05:42:23 pikhq: Does -jN work? 05:43:39 pikhq: Wait, you're on Debian, right? 05:43:56 I still think there might be something wrong with it if it takes a a really long time to compile. 05:44:10 zzo38: It's gcc's fault. 05:44:12 All gcc's fault. 05:44:13 -!- augur has joined. 05:44:14 GNU libc is tiny. 05:44:16 Absolutely tiny. 05:44:19 elliott: Recursive make makes -jN work much less well. 05:44:26 pikhq: You're on Debian, right? 05:44:31 elliott: Yes. 05:44:34 Then there might be something wrong with gcc then. 05:44:42 pikhq: Feel like building glibc? 05:44:57 pikhq: I mean, come on; if you do it, we get DEBIAN RUNNING ON NETBSD 05:45:20 elliott: Fuck no, I hate using glibc's build system. 05:45:22 My C programs don't take an hour to compile, even the large ones don't take more than a few minutes. 05:45:42 pikhq: Good. debian-buildpackage does it for you. 05:46:00 ... Say wait. 05:46:04 Debian uses eglibc. 05:46:07 pikhq: Yup. 05:46:10 It has for... a year now? 05:46:12 Maybe more. 05:46:17 Among other things, eglibc redoes the entire build system. 05:46:18 What is eglibc? 05:46:25 pikhq: Really? 'cuz it still seems to suck. 05:46:31 elliott: It sucks less. 05:46:34 zzo38: Embedded GLIBC. Basically glibc minus its maintainer, Ulrich Drepper, who is a moron. 05:46:57 zzo38: A fork of glibc that's kept in sync with glibc mainline, but with a lot of niceties added that Ulrich Drepper was too much of a moron to allow. 05:47:00 pikhq: $ mkdir glibc-build; cd glibc-build; dget http://security.debian.org/debian-security/pool/updates/main/g/glibc/glibc_2.7-18lenny6.dsc 05:47:07 zzo38: Also, it doesn't have Ulrich Drepper. 05:47:08 pikhq: You can't resist at least downloading it... 05:47:12 elliott: Meh.' 05:47:18 pikhq: Oh come on man. 05:47:20 pikhq: You can't do this to me. 05:47:45 elliott: I've built enough things this decade. 05:47:58 pikhq: Okay, let me elaborate. 05:48:10 pikhq: I JUST SPENT HOURS GETTING DEBOOTSTRAP -- WORST-DESIGNED BASH SCRIPT EVER -- TO RUN ON NETBSD 05:48:17 pikhq: IT NOW HAS LIKE 30 DEBUG MESSAGES 05:48:25 pikhq: THE ONLY BLOCKER TO A FULL DEBIAN SYSTEM RUNNING ENTIRELY PERFECTLY ON *NETBSD* 05:48:29 pikhq: IS ONE LIBC COMPILE 05:48:32 YOU COULD BE FAMOUS 05:48:36 DO IT! DO IT... NOW! 05:50:32 pikhq: Or at least give me a set of Linux 2.4 headers. 05:52:29 * Gregor so desperately wants a C compiler for System V :( 05:52:45 Gregor: SYSTEM V? Fuck that shit! FIRST! EDITION! UNIX! 05:53:13 elliott: SYSTEM FIVE 05:53:25 Gregor: Unix? Fuck that shit! PABST! BLUE! RIwait. 05:53:48 elliott: OS/2 WARP 4 05:54:07 Gregor: WARP 10 05:54:16 SUDDENLY, OS/2 DEVOLVES INTO FREAKISH LIZARD THING AND MATES WITH THE CAPTAIN 05:54:23 LEAVES SPAWN ON HOSTILE PLANET, RETURNS TO SHIP 05:54:27 NEVER MENTIONED AGAIN 05:54:35 Gregor: And THAT is why OS/2 was discontinued. 05:54:38 HAAAAAAAAAAAAAAAAAAAAAAAAAAAA 05:54:48 i had OS/2 Warp once. 05:55:02 i had all those fucking floppies 05:55:04 it never worked. 05:55:41 catseye: summary of computing. 05:57:50 -!- augur has quit (Ping timeout: 265 seconds). 06:00:47 okay seriously 06:00:49 pikhq: GLIBC 06:00:50 BUILD IT 06:01:08 いいえ。(îe.) 06:01:10 um hey 06:01:12 Gregor 06:01:17 where can i get linux 2.4 headers for i386 06:01:18 on debian 06:01:19 just 06:01:20 just curious 06:01:39 Not a clue. 06:01:42 In Linux 2.4 :P 06:02:59 Gregor: Can you motherfucking believe that 2.4 is still maintained? 06:03:08 I can motherfucking believe it. 06:03:10 I EXPRESS MY DOUBT AT THE NOTION THAT YOU CAN MOTHERFUCKING BELIEVE IT 06:03:39 A man has a right to his motherfucking beliefs 06:03:53 catseye: FUCK 06:03:53 YOU 06:04:33 Gregor: whut, linux 2.4 source tree has only arch/ crypto/ Documentation/ and drivers/ folders 06:04:42 DOES THIS MAKE ANY SENSE TO YOU 06:05:05 You say "folder" D-8 06:05:12 Gregor: well 06:05:12 what's under arch/ 06:05:14 FOLDERS DON'T FOLD 06:05:14 Gregor: in file-roller 06:05:17 They're fucking DIRECTORIES 06:05:17 it's folders! 06:05:22 because it's all graphical gnome bullshit 06:05:25 When did 2.2 stop being maintained? 06:05:28 because i say so 06:05:41 catseye: architectures 06:05:51 I just wish arch/sh/ was a port to the POSIX shell. 06:05:57 2004. 06:05:58 :) 06:05:58 oh wait 06:06:02 there are more directories 06:06:05 file-roller is just retarded 06:06:23 Oh, wait, 2005, *technically*. 06:06:32 The newest version of 2.2 is 2.2.27-rc2. 06:06:40 lawl@rc2 06:07:05 Linus is actually working on 2.2.27 as we speak. 06:07:09 It will be the greatest. Linux. EVER 06:07:22 Please tell me you're joking. 06:08:21 pikhq: Why? Wouldn't that be AMAZING? 06:08:53 "Hey guys, I decided 2.4 onwards is faggy bullshit and I've been working on 2.2 for a few years. Here's the current tree. It runs Flash without lag. Natively. On x86-64. I ported the machine code manually." 06:08:55 ... The newest version of 2.0 came out in 2004. 06:09:02 checking for suffix of object files... configure: error: cannot compute suffix of object files: cannot compile 06:09:05 CANNOT COMPUTE BEEEEEEEEEEP 06:09:06 elliott: I would love that. 06:09:34 elliott: Actually. 06:09:41 your object files end with fail 06:09:45 pikhq: "I've actually had my secretary reply to lkml email for a few years, what have I missed? Ha ha, just joking, I don't give a fuck. You're all idiots." 06:10:28 Night all 06:10:46 elliott: "Hey guys, I just made 2.8.0. You may also know it as 2.2.27." 06:10:55 pikhq: No way. 06:11:11 pikhq: "I also decided, what the fuck is up with this 2.2 bullshit? It's way better than anything else called 2.x. So, fuck it, here's Linux 3." 06:11:20 :D 06:11:56 pikhq: "The tarball is http://kernel.org/linux3.tgz, because (1) I don't care about your shitty website organisation scheme, and (2) I don't care about your long filenames and crap. I suggest you replace http://kernel.org/ with a link to it because DAMN is that site one major boner-kill." 06:12:32 "Oh, and what the hell were you guys smoking with that ALSA crap? I backported OSSv4. Took me a couple hours." 06:12:52 pikhq: YOU'RE DOING IT ALL WRONG: 06:13:19 pikhq: "Oh, I started maintaining OSS too. I had it checked out in my source tree and didn't really notice it wasn't some of my drunk code. Features added include multiple processes writing to /dev/dsp at once, etc" 06:13:25 OSS 3, that is. 06:13:27 :D 06:13:38 --enable-kernel=2.4 --with-headers=/home/elliott/libc/glibc-2.7/debian/include --enable-kernel=2.6.8 06:13:39 lol 06:16:02 /home/elliott/libc/glibc-2.7/build-tree/glibc-2.7/configure: line 3326: i486-linux-gnu-gcc: command not found 06:17:27 pikhq: "I've also updated the USB stack because it sucked. It's 3,000 lines now." 06:17:32 http://pkgsrc.se/chat/irssi "Irssi is an IRC client that could be pretty awesome someday, maybe." 06:17:39 elliott: 2.2 had a sane USB stack. 06:17:51 catseye: worst description ever 06:17:54 pikhq: But was it 3,000 lines? I think not. 06:18:05 elliott: Lemme check. 06:18:42 -!- Sgeo has quit (Read error: Connection reset by peer). 06:19:01 catseye: what is it with ... people and inability to summarise programs? 06:19:06 as well as meaningless words like "modular" 06:20:23 elliott: 48,000 lines for the entire thing, including all the drivers. 06:21:11 pikhq: 3,000 in Linux 3. 06:21:15 (No point in the version.) 06:21:17 elliott: doit 06:21:22 elliott: A reasonably functioning USB implementation, though, could be had in about 8,000 lines. 06:21:26 coppro: ?? 06:21:30 elliott: DO IT NOW 06:21:34 coppro: do what 06:21:45 (USB protocol + OHCI + UHCI + HID) 06:21:45 elliott: IT! 06:21:59 Who wants to see American TV explain, and depict, IRC? 06:22:00 http://www.youtube.com/watch?v=O2rGTXHvPCQ 06:22:02 You know you do. 06:22:11 It's where hackers go when they don't want to I've forgotten the rest of the line. 06:22:25 *** These critical programs are missing or too old: as ld 06:22:25 *** Check the INSTALL file for required versions. 06:22:30 checking version of as... 2.20.1, bad 06:22:30 hahaha 06:22:32 what's wrong with my as 06:22:51 elliott: old 06:22:52 elliott: When they don't want to be overheard. 06:23:00 yes, that 06:23:15 that show is terribly irrirtating 06:23:30 "Luckily, I speak leet." 06:23:36 semi-mathematical deus ex machinas + WOW WE ZOOM OUT AND SCRIBBLE EQUATIONS THAT MAKE NO SENSE ON THE SCREEN SO YOU KNOW THEY'RE DEEP THINKERS 06:24:27 1337 15 @ 5|_||35717|_|710|\| (`/|)#3|2 |_)|_||_)3Z 06:24:42 pikhq: clearly the killer is from New Jersey! 06:25:18 coppro: Well, of course. New Jersey is the sole cause of murderers. 06:25:31 pikhq: Say... How could I make glibc *not* try and check that the kernel is new enough? 06:25:35 pikhq: Some environment variable? 06:25:45 elliott: emacs configure.ac 06:25:50 pikhq: With binaries. 06:25:55 pikhq: I mean 06:26:08 catseye$ sudo chroot debian 06:26:08 Password: 06:26:09 FATAL: kernel too old 06:26:09 catseye$ 06:26:10 pikhq: I thought that was Philadelphia 06:26:13 pikhq: How can I make glibc shut up and try anyway? 06:26:26 (bonus points if you're sailing there to draw a line) 06:27:24 i just made a netbsd stick with includes of some awesome APPS: netcat! nano! links! irssi! 06:27:37 elliott: Down the highway, not across the street. 06:27:58 catseye: you forgot X111111111 06:28:23 elliott: that's one of the distribution sets. i just need to untar it 06:28:47 i might as well put the whole thing through its paces, see how much space it uses up 06:28:56 catseye: 4 gigs 06:30:19 pikhq: Not so! http://www.thebestpageintheuniverse.net/images/razor2.gif Across the jugular. 06:32:18 elliott: Huh, Maddox actually updated. Several times. 06:32:27 Well, three times. 06:32:32 Once a month. 06:32:56 Which is fairly astounding compared to the past 3 years of hardly anything. 06:36:03 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 06:39:09 -!- augur has joined. 06:44:18 elliott: that would be unfortunate, as the partition is only 500M right now, to make it faster to dd 06:44:37 catseye: i'm thinkin': let's wait until netbsd 6 06:44:40 which will do linux 2.6 06:44:47 will it? when will it? 06:44:59 catseye: yes; when it's done 06:45:11 i mean, 5 just came out, didn't it? earlier this year 06:45:16 Last year. 06:45:17 http://www.netbsd.org/changes/changes-6.0.html 06:45:24 Update linux emulation to support the most commonly used linux 2.6.x kernel features. We now claim to be linux kernel version 2.6.18. [chs 20100706] 06:45:26 time flies 06:45:46 well damn 06:45:50 cool, it emulates linux even on non-x86 :) 06:45:51 why am i not running netbsd-CURRENT 06:45:58 catseye: have fun updating :P 06:46:14 wow 06:46:16 i need more computers! 06:46:16 it works with SVGAlib 06:46:39 i... though svgalib was dead 06:46:42 *thought 06:46:45 "shared libraries that the program depends on, and the run- 06:46:45 time linker. Also, you will need to create a ``shadow root'' directory 06:46:45 for Linux binaries on your NetBSD system. This directory is named 06:46:45 /emul/linux or /emul/linux32 for 32bit emulation on 64bit systems. Any 06:46:45 file operations done by Linux programs run under NetBSD will look in this 06:46:46 directory first. So, if a Linux program opens, for example, /etc/passwd, 06:46:48 NetBSD will first try to open /emul/linux/etc/passwd" 06:46:50 nice 06:46:58 catseye: it is :) 06:47:03 afaik 06:48:06 i forked it because it could not would not run happily on dfly at all. my improvements did not help 06:48:53 then it was all, like, that graphics buffer device, on linux. which was like, no. 06:49:28 framebuffer 06:49:38 fbdev is awesome 06:49:42 it's like /dev/dsp for graphics! 06:50:05 Wow. Battlestar Galactica 1980. The writing staff was trying to kill it. 06:50:06 catseye: remember this for me: /emul/linux kthx 06:50:22 catseye: also: netbsd-current! DO IT 06:50:25 pikhq: *Galactica 1980 06:50:51 They actually tried to kill the show. 06:51:05 Because it sucked. 06:51:24 :D 06:53:19 catseye: Hey cool, NetBSD doesn't need symlinks from libraries to more specific versions; the dynamic linker handles that itself. 06:54:13 pikhq: what the hell is "DLL Jump" in ldd output? from http://netbsd.gw.com/cgi-bin/man-cgi/man?compat_linux+8+NetBSD-current 06:54:22 (me@linux) ldd linuxxdoom 06:54:22 libXt.so.3 (DLL Jump 3.1) => /usr/X11/lib/libXt.so.3.1.0 06:54:22 libX11.so.3 (DLL Jump 3.1) => /usr/X11/lib/libX11.so.3.1.0 06:54:22 libc.so.4 (DLL Jump 4.5pl26) => /lib/libc.so.4.6.29 06:54:25 i followed freebsd-current for a while, so i don't see why i couldn't do netbsd-current, but, dear lord. it will not make this disused laptop happy. 06:54:25 elliott: That's so much nicer than ldconfig making the symlinks. 06:54:38 pikhq: otoh, the manpage might be lying and it might have links anyway :) 06:54:40 who knows?! 06:55:31 elliott@dinky:~$ ssh ehird@localhost -p 9292 06:55:31 Password: 06:55:32 Last login: Sat Oct 30 18:11:31 2010 from localhost 06:55:32 NetBSD 5.0.2 (GENERIC) #1: Wed Oct 27 15:17:46 CDT 2010 06:55:32 Welcome to NetBSD! 06:55:32 catseye$ ls /lib | grep libc 06:55:34 libc.so 06:55:36 libc.so.12 06:55:37 -!- augur has quit (Remote host closed the connection). 06:55:38 libc.so.12.164 06:55:40 pikhq: Never mind, they have links anyway for some inexplicable reason. 06:55:42 werrrt? 06:55:47 catseye: See last line. 06:55:54 -!- augur has joined. 06:55:58 that's... good, right? 06:56:11 i mean, it is certainly unusual 06:56:12 catseye: not really, it'd be more awesome if the manpage was telling the truth and the dynamic linker figured it out itself 06:56:16 so you only needed libc.so.12.164 06:56:18 no, it's usual 06:56:20 it also sucks :) 06:56:30 i should look for myself 06:56:52 catseye: But you could just use my cached answer! of magiiiic 06:56:56 They're all symlinks to the last one. 06:56:59 -!- augur has quit (Remote host closed the connection). 06:57:02 Except for the last one. 06:57:06 -!- augur has joined. 06:57:07 Which is not a symlink at all. 06:57:15 It is a hardlink though. To itself. 06:57:17 Like every file. 06:57:23 Yes. I'm not used to there being *two* numbers, is all. 06:57:32 elliott: That's probably to make the (non-dynamic) linker not complain. 06:57:48 I'm not sure that the symlinks are (always) used, and/or what pikhq just said. 06:57:49 pikhq: Lame. 06:58:01 catseye: First number is increased when ABI is broken, last number is increased when it's updated in any way. 06:58:18 So in Linux, you have libc.so.5 moving to libc.so.6 being a distro maintainer's HELL. 06:58:30 But libc.so.6.1 to libc.so.6.28934723978428934 is not that big a deal, it's just an upgrade. 06:58:34 No need to relink programs. 06:58:48 catseye: So, often, programs link to "libc.so.6", not any specific version. 06:58:55 And they just get the latest one on the system. 06:59:08 I don't remember FreeBSD doing this :) 06:59:11 And apparently for the static linker or whatever, NetBSD still has symlinks to do this, despite the dynamic linker purportedly being smart enough to do it itself. 06:59:15 catseye: It will. Probably. 06:59:16 Everything does. 06:59:25 I'm sure. I think. 06:59:27 libc.so.6 was just libc.do.6 and that's what you get. 06:59:28 Yeah. 06:59:29 Prolly. 06:59:31 elliott: Well, Linux's dynamic linker is *smart enough* to do it itself. 06:59:41 pikhq: Here, you're more of an authority; talk to catseye. 06:59:52 catseye: It may simply be that they called the latest version that all the time, even though it had a more specific version. 07:00:36 if it could be said to have a version at all 07:00:44 beyond simply 6 07:00:46 catseye: THE CVS REVISION OMG 07:01:00 catseye: Actually, its version is 2.x. 07:01:12 catseye: The so version being 6 on x86 is for hysterical raisins. 07:01:16 catseye: libc6 is LINUX wrongness. 07:01:21 6 was an example. 07:01:22 pikhq: Not on FreeBSD. 07:01:27 wrt Free. 07:01:28 It's probably libc.so.42 on FreeBSD. 07:01:44 elliott: True. 07:02:04 Gah, Linux Libc. 07:02:36 pikhq: *glibc 07:02:49 wow installing all the distribution sets on a flash drive is not exactly fast 07:02:51 pikhq: GNU have, since the start, controlled Linux and have thus been able to make it suck. 07:03:00 elliott: No, Linux Libc. libc.so.2 through libc.so.5 on Linux x86. 07:03:05 pikhq: Linux 0.01? Yup, you link with glibc and use bash and gcc/libc. 07:03:12 pikhq: Uhh, yeah, linux libc was glibc. 07:03:20 It was GNU software. 07:03:26 It was distributed with Linux gcc. 07:03:37 (well, in the early days) 07:03:44 elliott: libc.so.1 and libc.so.6 were glibc. The others were a fork with a lot of nasty stuff... 07:03:54 Such as support for a.out dynamic linking. 07:03:57 I wonder if I could speed this up by doing it on a HD partition, and then dd'ing it over. Well, I know I could. 07:03:59 pikhq: they tracked glibc though didn't they? 07:04:00 You may now cry in a corner. 07:04:02 elliott: No. 07:04:05 pikhq: heh okay 07:04:17 pikhq: old libc 2s *were* distributed with gcc though 07:04:19 jump?.tgzs 07:04:21 for numerical ? 07:04:25 or was that libc 1? 07:04:26 who knows. 07:04:29 elliott: You'll note that they *broke ABI 4 times*. 07:04:49 pikhq: libc 4 is still > libc 5 > glibc imo though :) 07:04:55 pikhq: and it's still maintained! 07:05:01 In the same time period, glibc did not once break ABI. 07:05:18 elliott: Yeah, but a.out dynamic linking. WHY 07:05:19 pikhq: libc 4 hasn't broken ABI in quite a few years :) 07:05:26 pikhq: And it's still maintained! 07:05:36 Do you have any idea how that works? 07:05:49 pikhq: YOU'RE MEANT TO ASK ME WHO MAINTAINS LIBC 4 07:05:54 AND ALSO WHERE TO GET THE LATEST RELEASE 07:05:57 elliott: I KNOW ITS YOUR MOTHER 07:05:58 SO YOU CAN INSTALL IT ON ANYTHING 07:06:04 pikhq: http://www.pell.portland.or.us/~orc/Code/libc/ 07:06:07 pikhq: Latest release is 4.8.4. 07:06:43 Oh wait, it was jump4?.tar, not jump?.tgz. 07:06:50 With a.out dynamic linking, each shared object has a hardcoded load address. 07:07:05 You may now murder people. 07:07:24 pikhq: Technically libc 4 was last released in 2002, but the maintainer still uses it, so I'm sure you could get a new release with a lot of prodding. 07:07:29 pikhq: Still. 2002. 07:07:31 trying to process extent of fuckedupedness of this 07:07:37 pikhq: By then everyone had been using glibc. For years. 07:07:48 elliott: 'Cept Debian. 07:07:56 Debian was using dinosaurs. 07:08:18 * Fix up strftime to properly deal with dates past 1999 07:08:25 pikhq: libc4 was *made y2k compliant*. 07:08:39 Sometime in 1998-1999. (single changelog entry for all such changes) 07:08:42 -!- augur has quit (Remote host closed the connection). 07:09:57 -!- augur has joined. 07:10:44 you could do the WindwOS thing and just not have a "system" C library. 07:11:15 You want to come to this party, you bring your own booze, pal. 07:11:19 catseye: well with static linking you *don't* 07:11:27 you just have something called /lib/libc.a 07:11:33 doesn't mean you have to link to it 07:11:57 "you" being the developer, of course. 07:12:09 catseye: don't ship /lib/libc.a 07:12:12 problem solved :) 07:13:08 [[LOGREADING ELLIOTT]] Write a VCS, foo. 07:13:13 i so need a todo system 07:13:17 but it'd get so clogged up... 07:17:23 a NIH system 07:20:10 500M is a *bit* small; I'm up to 383M with just all the base dist sets. i'll see what weight my useful APPS add 07:20:41 pikhq: it seems that parsons doesn't actually use sccs 07:20:44 he just calls all vcses sccs 07:20:44 :( 07:20:57 in some sense that is just as entertaining 07:21:31 (i'll have an orange coke. let's slap a bsd gpl on this thing and check it into the github sccs.) 07:22:13 catseye: well "source code control system", it's pretty generic :) 07:22:18 catseye: like "init", "c compiler", etc. 07:22:22 all those old unix tools had generic names 07:22:22 true, but... taken 07:22:25 and that was a better time 07:22:32 a time when we didn't give everything name 07:22:33 *names 07:22:37 they were just implementations of their functionality 07:22:50 and we had no silly "distros" and crap 07:22:51 BAH! 07:22:54 get off my lawn. 07:22:58 goodnight; bye. 07:23:02 -!- elliott has quit (Quit: Leaving). 07:28:19 -!- zzo38 has quit (Quit: Pb). 07:34:55 -!- DrNinja has joined. 07:35:14 the one, the only, ircII client. 07:35:52 lighterweight than irssi I'll grant, but not exactly a pleasure to behold 07:36:02 -!- DrNinja has quit (Client Quit). 07:42:12 -!- DrNinja has joined. 07:42:26 not an improvement 07:42:28 -!- DrNinja has quit (Client Quit). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:36:34 -!- iGO has quit. 09:01:26 -!- augur has quit (Remote host closed the connection). 09:01:38 -!- augur has joined. 09:02:37 -!- augur has quit (Client Quit). 09:02:56 -!- augur has joined. 09:05:37 -!- Phantom_Hoover has joined. 09:26:16 -!- MigoMipo has joined. 09:56:34 -!- Phantom_Hoover_ has joined. 09:56:34 -!- Phantom_Hoover has quit (Read error: Connection reset by peer). 10:39:31 -!- MigoMipo has quit (Remote host closed the connection). 10:40:02 -!- MigoMipo has joined. 10:57:58 -!- Phantom_Hoover_ has quit (Ping timeout: 265 seconds). 11:10:11 -!- Phantom_Hoover_ has joined. 11:47:10 -!- tombom has joined. 11:51:11 -!- FireFly has joined. 11:52:46 -!- BeholdMyGlory has joined. 12:27:23 [[In the USA, the series premiered on 21 March 2010 with Attenborough's narration replaced by Oprah Winfrey reading from a different script tailored to American audiences.]] 12:27:38 Dear god, are American TV people really that bad? 12:42:52 Apparently. 12:45:23 I mean, how did they tailor the script for American audiences? 12:45:32 Remove any mention of the word "evolution"? 12:47:34 remove all difficult words, repeat the rest to fill the gaps 12:50:24 well, and just change the accent to american, I think that's a big deal 12:53:14 [[Some of the reviewers said that the script was re-written for her, and I can believe it. I can't believe Attenborough saying lines like "hunting crab seals is toooo much work!" Oprah narrates this thing as if she were reading a bedtime story to little kids and comes off as snarky and condescending. In the opening segment, she's discussing a fox chasing an ibex kid and it's basically like "heeeere comes the fox! UH OH!!"]] -- amazon.com review of the blu-ray r 12:53:14 elease. 12:56:10 2% of people bought the Oprah version after looking at Attenborough's, and it's rated at 1½ starts. 12:56:13 *stars 13:02:18 Apparently, they did the same to another of his documentaries, but with Sigourney Weaver instead. 13:03:32 And they had Blue Planet narrated by Pierce Brosnan. 13:04:10 Seriously, who is it that thinks treating all viewers like small-minded idiots is a good idea? 13:35:09 -!- Zuu has quit (Read error: Connection reset by peer). 13:38:43 -!- Zuu has joined. 14:27:41 -!- Sgeo has joined. 14:47:06 -!- BeholdMyGlory has quit (Remote host closed the connection). 14:57:54 I am starting to believe that there is no such thing as a browser not full of fail 15:01:47 -!- Phantom_Hoover_ has quit (Ping timeout: 245 seconds). 15:37:04 -!- tombom has quit (Ping timeout: 250 seconds). 15:49:19 -!- BeholdMyGlory has joined. 16:11:36 -!- ais523 has quit (Remote host closed the connection). 16:24:49 -!- sftp has quit (Remote host closed the connection). 16:27:26 -!- tombom has joined. 16:32:52 -!- sftp has joined. 16:34:09 -!- poiuy_qwert has joined. 16:35:13 -!- sftp has quit (Remote host closed the connection). 16:36:00 -!- sftp has joined. 16:43:41 Sgeo, lynx? 16:43:55 And everything that doesn't work in lynx is of course full of fail. 16:43:57 ;) 16:56:30 -!- Sasha has joined. 16:59:14 -!- catseye has quit (Quit: Lost terminal). 17:03:49 -!- catseye has joined. 17:05:25 * catseye has connected to IRC from a liveboot NetBSD stick 17:05:35 Sgeo: what you must do, of course, is write your own 17:06:23 Able to use WebKit, Gecko, or .. the IE one as necessary 17:06:32 Able to use extensions from any browser 17:06:50 Can use GreaseMonkey scripts designed for any browser 17:07:51 Vorpal: I'm browsing esolangs.org with links right now :) lynx is more of a classic though 17:08:31 catseye, heh, how well does it work? 17:09:13 Vorpal: it's not bad. renders the table on the main page surprisingly well 17:09:20 Sgeo, not the opera rendering engine? 17:09:59 Vorpal, give me the money, and I'll include it too 17:10:16 Or whatever 17:10:26 Sgeo, anyway I think you are referring to FireInternetBloatKitExplorer? 17:10:55 And it will be designed to not be bloated! 17:10:56 no one here ever mentions Dillo 17:10:58 17:11:01 -!- BeholdMyGlory has quit (Read error: Connection reset by peer). 17:11:09 What rendering engine does Dillo use? Its own? 17:11:15 yes 17:11:19 -!- BeholdMyGlory has joined. 17:11:24 catseye, well, elliott mentioned it sometimes iirc 17:11:35 Can I use IE6's Trident if IE>6 is installed? 17:11:43 It does not do Javascript, is the big thing 17:12:11 So that businesses can use this browser in place of IE6 17:13:06 i have no idea what Trident is 17:13:19 -!- BeholdMyGlory has quit (Remote host closed the connection). 17:13:36 I _think_ it's the IE rendering engine 17:13:41 If not, I did not mean Trident 17:14:34 You can do a remote call to one of those we'll-render-it-in-IE-for-you services ;) 17:15:02 i should see if i can run X 17:15:46 Why does Trident like to make clicking sounds randomly? 17:16:19 -!- Sasha has quit (Ping timeout: 240 seconds). 17:16:47 -!- BeholdMyGlory has joined. 17:18:22 (yup, i can! that's cool) 17:18:35 Sgeo: you clicked on a link + lag 17:19:11 But it happens when I don't click a link 17:20:13 maybe it happens when javascript "clicks" on a link too 17:20:14 catseye: I mentioned Dillo just the other day! 17:20:19 fizzie: I missed iT! 17:20:23 We are worms, we're the best/and we've come to win the war/we'll stay, we'll never run/stay until it's done 17:20:39 Sgeo: actually i recall the clicking you're talking about. 17:20:52 -!- Sasha has joined. 17:20:57 15-10-2010 19:42:25 > fizzie: Dillo does native GTK widgets for you. :p 17:21:09 SOMETHING in there thinks a page changed, therefore it goes "click". 17:23:13 -!- Behold has joined. 17:24:10 -!- catseye has quit (Remote host closed the connection). 17:26:32 -!- catseye has joined. 17:27:08 -!- BeholdMyGlory has quit (Ping timeout: 240 seconds). 17:27:36 -!- sbszulu has joined. 17:28:36 -!- Behold has quit (Remote host closed the connection). 17:28:55 -!- elliott has joined. 17:32:27 -!- catseye has set topic: 10 days since last oerjan sighting | http://tunes.org/~nef/logs/esoteric/?C=M;O=D | something clever here. 17:34:06 -!- cpressey has quit (Disconnected by services). 17:34:10 -!- catseye has changed nick to cpressey. 17:34:51 09:06:32 Able to use extensions from any browser 17:34:52 ahahaha 17:35:00 s/from/for/ 17:35:04 Sgeo has devolved into "I want an OS that can run programs from ANY OS!" 17:35:31 cpressey: dillo is awesome! dillo is useless. 17:35:58 dillo is inexplicably not in debian 17:36:33 cpressey: wow they're adding css support! 17:39:44 Compromise. Dillo is awesomely useless. 17:41:17 elliott: There IS a pkgsrc package for it :) 17:41:23 cpressey: but is it dillo 2? 17:41:32 probably almost certainly not 17:41:34 dillo 1 is lame and is fltk 1 (boring STABLE toolkit version) and no CSS 17:41:43 dillo 2 is awesome and fltk 2 (MOVING TARGET WOO) and anti-aliasing and CSS 17:41:57 it's trying to install fltk2 for me so YES 17:42:01 http://www.dillo.org/screenshots/gnu.zh.png 17:42:10 http://www.dillo.org/screenshots/line-height.png 17:44:11 "Q: What happened to the dillorc preferences for colors? " "CSS happened! To set colors, --" 17:44:20 heh 17:44:21 Heh, I like the "CSS happened!" bit. 17:46:48 Dillo 2.2 installed! 17:47:05 Now YOU are awesomely useless too. 17:48:22 COmpletely! It will not browse my website because it is actual XHTML now. 17:49:05 echo Linking fractals... 17:49:05 gcc -I.. -O2 -Wall -Wunused -I/usr/include/freetype2 -Wno-non-virtual-dtor fractals.o fracviewer.o ../lib/libfltk2_glut.a -L../lib -lfltk2 -lX11 -lXi -lXinerama -lXft -lpthread -lm -lXext -lsupc++ -o fractals 17:49:16 Yes... that will absolutely suffice to compile an OpenGL program, I am sure. 17:49:51 * elliott disables opengl 17:50:08 It's like half a browser! Amazon.com looks SO AWESOME 17:51:08 cpressey: "[In part because no one has implemented the CSS 'float' property yet. But besides that...]" 17:51:33 cpressey: "Our policy is not to work around broken HTML." Looks like they never heard of Postel's Law. 17:51:34 Melodica + cat = insane cat 8-D 17:52:03 wow, conal elliott really wants a lot of books i would never go anywhere near 17:52:05 Anyway! 17:52:16 cpressey: like what? 17:53:03 "if they give you lined paper, write sideways"? 17:53:20 whut 17:53:40 "If They Give You Lined Paper, Write Sideways is a book by Ishmael author Daniel Quinn. It is presented as a dialog between Quinn and a reader of his books, and is intended to answer the question "How do you do what you do?" 17:53:40 The title is quite similar to a quotation attributed to Juan Ramón Jiménez (24 December 1881 – 29 May 1958) "If they give you ruled paper, write the other way." See." 17:53:42 --Wikipedia 17:55:06 -!- wareya_ has joined. 17:57:32 -!- wareya has quit (Ping timeout: 240 seconds). 17:59:16 Is Postel's Law the "liberal in what you accept, conservative in what you emit" thing/ 17:59:20 I've heard arguments against that 17:59:30 That that's a part of the reason the web is screwed up 18:00:49 The arguments are mostly based on misinterpretations. The web is screwed up for entirely different reasons and they are called Netscape and Microsoft in the 90s. 18:09:20 -!- sbszulu has quit (Ping timeout: 240 seconds). 18:19:06 cpressey: "You can tell a link from plain content by the hand-shaped cursor." --Dillo 18:20:20 it fails impressively at reddit 18:20:33 m.reddit.com works great though! 18:22:28 Sgeo: http://diveintomark.org/archives/2004/01/08/postels-law 18:22:30 Sgeo: http://diveintomark.org/archives/2004/01/14/thought_experiment 18:22:32 Sgeo: read both of these 18:24:42 bbiab 18:25:06 -!- Phantom_Hoover_ has joined. 18:35:55 cpressey: it seems that VICE isn't that free 18:35:58 cpressey: 18:35:59 C64MEM: Error - Couldn't load kernal ROM `kernal'. 18:35:59 Machine initialization failed. 18:36:00 Exiting... 18:36:04 cpressey: guess debian strips out the ... questionable bits 18:36:16 This package does not contain the various ROM images needed to actually use the 18:36:16 emulators; they are available separately from other locations (see the 18:36:16 README.ROMs file). A corporation in the Netherlands called Tulip holds the 18:36:16 copyrights to the ROM images, and redistribution is not permitted, but VICE 18:36:16 itself is unencumbered. 18:38:21 The ROM files in the `C128', `C64', `CBM-II', `DRIVES', `PET', `PLUS4' 18:38:21 `PRINTER' and `VIC20' directories are Copyright C by Commodore 18:38:21 Business Machines. 18:40:07 hey Sgeo managed to make even the Worms theme lame 18:40:19 elliott, those are the lyrics! 18:40:23 yes 18:40:26 you managed to make them lame 18:40:29 also, those are like 18:40:32 5% of the lyrics! 18:40:41 admittedly it is a silly theme song. 18:40:43 but you made it sillier 18:41:53 who doesn't run with /nologo anyway 18:42:12 -!- sbszulu has joined. 18:43:52 and I looked at it one more time and I swear to God it said 2003-06-31. 18:44:06 Sgeo: Shoo! Next post! There are two! 18:44:14 ORLESE 18:44:15 I'm still reading this one! 18:44:19 That's the last line :P 18:46:23 "Heres the thing: that wasnt a thought experiment; it all really happened." 18:51:36 cpressey: lol @ petulant cursor 18:51:40 cpressey: the border flashing hertz 18:51:58 Wow 18:52:11 Searching for information on the fictitious drug Angelfire is near-impossible 18:52:14 There was something else wrong with the Debian/Ubuntu VICE, but I've forgotten what it was. Maybe it was just that they weren't tracking the latest version with any speed. 18:53:03 "Double size, PAL emulation, scale 2x size" -- bliss! 18:53:11 I love CRT-ish blurryemulations. 18:53:20 fizzie: i think i'll just compile my own vice 18:53:51 fizzie: oh, except the stock package doesn't have debian menu support. guh. 18:53:53 oh well 18:54:21 I compiled my own vice here, FWIW. 18:54:37 yeah, i will too 18:55:00 The GTK support it nowadays has is somewhat nice: the old menus and such were quite horrible. 18:55:12 The menus are very big but GTK 2 here. 18:55:15 Big = long. 18:55:20 Badly organised; both "Options" *and* "Settings". 18:55:28 Took me ages to find the display settings. 18:56:01 I think "Options" and "Settings" are what used to be the right-click and... middle-click "context-sensitive" menus in 'regular' vice. 18:56:11 Dear god. :) 18:56:55 fizzie: Any configure options I SHould know about, fwiw? 18:57:02 --with-sdlsound use SDL sound system 18:57:03 Hmm. 18:57:14 --disable-lame disable MP3 export with LAME 18:57:21 If only every program let you --disable-lame. :) 18:57:31 --enable-gnomeui enables GNOME UI support 18:57:34 fizzie: That's the one, right? 18:58:29 That's it. 19:02:40 --enable-ethernet if you want to run Contiki with networking in it. 19:02:55 (I haven't bothered.) 19:03:00 Fuck yes I do. 19:03:06 -!- bsmntbombdood has quit (Remote host closed the connection). 19:04:11 elliott: Hey, there is no technical reason a hypothetical OS couldn't run programs for any OS. It would just have the most ridiculous kernel ever, and it would rely on essentially perfect reverse engineering. 19:04:35 pikhq: and it's still a stupid idea 19:04:42 As for running extensions for every *web browser*? Yeah, no fucking way. 19:04:58 XUUUUUUUUUUL 19:05:02 elliott: Well, true. Beyond a certain point there's really no point in it at *all*. 19:05:03 port XUL/javascript/CSS to gtk 19:05:04 SOMEHOW 19:05:06 and then gtk to Qt 19:05:07 SOMEHOW 19:05:12 and it will all work 19:05:16 (probably by the time you get Win32, Linux, OS X going) 19:05:18 also: emulate the structure of other browsers' UIs somehow 19:06:53 Heck, I doubt you could run both Firefox and Seamonkey extensions at once. 19:07:08 Current Contiki site seems to focus only on their new embedded-systems OSery, but there's at least http://c64bbs.com/contiki/ where you can get a TFE-compatible C64 Contiki image. 19:08:34 pikhq, hmm, why? 19:09:17 Current Contiki site seems to focus only on their new embedded-systems OSery, but there's at least http://c64bbs.com/contiki/ where you can get a TFE-compatible C64 Contiki image. 19:09:20 my. favourite. thing. ever 19:09:33 Do I want C64 or C128? LOL C64 DUH 19:11:50 Sgeo: Extensions for XUL browsers depend very very heavily on the actual DOM tree of the browser UI. 19:12:11 So fake that! 19:12:19 ...that would probably suck 19:12:19 Sgeo: ... 19:12:23 Sgeo: You suck. 19:12:28 ... No, you can't fucking *do* that. 19:12:37 Also, IE extensions would be even worse. 19:12:48 I guess if it were faked, some extensions wouldn't work 19:12:56 They're DLLs. They rely on the actual explorer.exe's code. 19:13:24 The only thing you could possibly pull off is Chrome extensions, which are Javascript with some added API functions. 19:13:34 And even that would be annoying. 19:13:59 What about Opera extensions? 19:14:14 I don't know how the Opera extension system works. 19:14:27 There's a squirrel that lives near my building that I see every so often. I can recognize it's the same squirrel because it has no tail. It is a constant reminder that, visually speaking anyway, squirrels are approximately 50% tail. 19:14:29 I'm going to guess, though, that you don't want to do that. 19:15:07 fizzie: VICE uses the fancy http://www.pepto.de/projects/colorvic/ palette, rigt? 19:15:09 *right? 19:16:56 Well, it has a couple of alternatives. 19:16:58 c64hq.vpl c64s.vpl ccs64.vpl default.vpl frodo.vpl godot.vpl pc64.vpl vice.vpl 19:17:13 The default could be that one. 19:17:50 The "vice.vpl" seems to match the numbers given at the end of that article. 19:21:01 fizzie: vice isn't shown in the eternal colour set list, though. So I guess it's the non-external one. 19:21:05 default is shown, as Default. 19:21:13 It is not the default when external coloursets are disabled. 19:21:35 It's probably what it uses by default when not selecting "external". 19:22:11 Uhh, what directory is that stuff in again? >__> 19:22:13 -!- cheater99 has quit (Ping timeout: 245 seconds). 19:23:14 The palette files? Those are in data/C64/ in the source set, not sure where (or if) it installs them. 19:23:38 Palette: Loading palette `/usr/local/lib/vice/C64/default.vpl'. 19:23:40 That explains it. 19:24:09 fizzie: How odd. It's entirely different to all the ones listed and the non-external one. 19:24:57 Yes; that's very strange. 19:25:14 Maybe it's what some version of vice used by default, and they updated the numbers inside the sources but not in that .vpl file. 19:25:31 fizzie: Well, it looks *very different* from the default. 19:25:39 We're talking "much darker BASIC screen" here. 19:25:51 That it does. 19:26:38 fizzie: As a distrustful man, I'm sticking to it. 19:26:45 I don't see any article defending this NEW one hrmph hurh. 19:26:54 Still, it's not like the colors probably were very well calibrated on physical machines either. 19:27:08 "Since all of this was based on selecting different resistor values and resistance varied from chip lot to chip lot, there was variation from one Commodore 64 to another. It wasn't as bad as it could have been though, since all of the Chrominance selection was based on resistor ratios, which could be kept constant even if the actual resistor values varied. Luminance was more of a problem." 19:27:19 fizzie: Yes, but, http://www.pepto.de/projects/colorvic/dk-ccs64.gif vs http://www.pepto.de/projects/colorvic/dk-pepto.gif. 19:27:27 That's a pretty dramatic improvement. 19:28:03 Well, sure, the ccs64 is pretty... how should I say it, theoretical. 19:29:32 fizzie: Wait, that Contiki page is just to download the webserver, I think. 19:30:03 "Today Contiki is mostly known as an operating system for networked embedded systems. A few years ago, however, Contiki's primary claim to fame was its Commodore 64 port. With the help of JAC64, a Java-based C64 emulator developed by my colleague and fellow Contiki developer Joakim Eriksson, you can now experience the C64 port of Contiki 1.2-devel1 again, directly in your web browser! Click here to enjoy it - unfortunately without networking supp 19:30:03 ort at present." 19:30:04 Oh joy. 19:30:22 Well, it builds a full contiki.dsk; it might be that it's mangled to run the webserver only, though. 19:30:39 BREADBOX64 is a twitter client for the C64/128 which allows you to tweet from a real C64 and show your friends timeline. It uses Contiki, a very nice embedded OS, and the MMC Replay cartridge with the RR-Net add on for the physical connection to the net. 19:30:41 It occurs to me that Factor is a bit... large 19:30:45 * elliott speechless 19:31:15 There's a LOT to learn. I don't mind, but the general programming public... 19:31:24 fizzie: http://120.146.162.194:8080/contiki.html Why not download Contiki from a C64? 19:31:49 "404 - file not found" 19:31:57 fizzie: On what file? 19:32:16 Yeahhhh Sgeo the "general programming public" uses Java and .NET; when you count all the "standard classes", are these any smaller? 19:32:27 elliott: On your link; but reloading the page made it appear. "Interesting." 19:32:34 fizzie: Well, it's a C64. :) 19:32:34 Good point 19:32:45 fizzie: On http://cbm8bit.com/contiki/ I ought to fill in my actual LAN IP and the like, right? 19:33:20 I do not like dragons. 19:33:30 As far as I can tell, the vice networking just uses low-level packet-mangling stuff to fake it as if the C64 was a different machine, so you should stick in something as if you were adding a new machine in the network. 19:33:40 I am tempted to build VICE, but I've done that before and I could be building NetBSD-CURRENT instead! 19:33:47 cpressey: That game is frickin' hard. 19:33:48 Disclaimer: I haven't actually ran the thing in vice. 19:33:50 It might help if I had a joystick. 19:33:57 The site is also pretty slow! Maybe they should load-balance it to several C64s. 19:34:52 fizzie: that downloaded contiki thing starts but no GUI or anything 19:34:58 just "up and running" 19:35:00 guess it's webserving 19:36:52 fizzie: 1.2-devel1 starts the gui 19:36:54 this is more like it 19:36:58 -!- cheater99 has joined. 19:37:14 fizzie: no joystick mouse support, wtf?! 19:38:25 elliott: is it? maybe i got used to it with the keyboard 19:38:37 cpressey: well i went in circles i think 19:38:40 and also was terrible at it 19:38:58 cpressey: i never found one of the ... key whatevers! 19:39:25 omg it has irc 19:39:26 YOU GUYS 19:39:28 elliott: the maze is large! 19:39:30 SO GONNA IRC FROM THIS 19:39:33 cpressey: yes, terribly large 19:39:34 i got lost 19:39:34 :) 19:39:38 i am bad 19:39:57 Net driver > < 19:40:00 I... don't know! 19:40:39 VICE emulates the TFE thing, but I'm not sure what Contiki calls it. 19:40:47 I'm getting a "undefined reference to `libnet_write_link_layer'" from configure --enable-ethernet, unfortunately. Curious. 19:41:07 Works for me. 19:41:14 (There is libnet_init in -lnet, but not libnet_write_link_layer in -lnet.) 19:43:07 http://dusted.dk/stuff/ide64/bignew/ethconfigclose.jpg hmm my screen is much duller than this 19:43:31 hey, turning off smooth luminances smooths the gradient 19:45:58 Oh, the libnet_write_link_layer test is just optional; it decides whether to use libnet 1.0 or 1.1 by that. I just haven't done "make install", which might explain why I'm not seeing any changes. 19:46:35 Come to think of it, I don't think I ran "make" either. I just ./configure'd. 19:46:59 :-D 19:47:56 cpressey: QUICK WHAT ASSEMBLER SHOULD I USE FOR THE C64 19:48:08 -!- BeholdMyGlory has joined. 19:48:49 For some unfathomable reason, I use cc65's assembler (ca65) as a standalone thing; but that's probably not such a great idea. 19:49:08 elliott: um. ON the C64, or cross-assembling TO the C64? 19:49:40 cpressey: uh, to. i played with the c64 once and used an assembler in it. not. fun. 19:49:40 (note: first is too hardcore for me) 19:49:59 elliott: i use the Perl version of p65. also fairly unfathomably, except that it's easily portable 19:50:16 cpressey: that site told me to use OPHIS instead 19:50:20 which is like that but written in PYTHON 19:50:21 and NEWER 19:50:23 with a MANUAL 19:50:39 you can try that if you like 19:50:44 At least with ca65 you get to write linker scripts. :p 19:50:45 there is nothing wrong with the perl one thought 19:50:47 *though 19:50:50 unmaintained software or irritating python software? 19:50:52 OMG HOW DO I DECIDE 19:50:55 well it has some shortcomings but nothing too major 19:51:10 like its label arithmetic is pretty limited 19:51:39 i should probably try the python version at some point 19:51:54 cpressey: i just had the strangest perversion. I SHOULD WRITE A UNIX FOR THE COMMODORE 64 19:51:57 * elliott waaaay in over his head 19:52:04 at the point where i discovered p65, the python version was no better and it seemed like development wasn't happing on it anyway 19:52:14 agreed, waaaay 19:52:25 cpressey: it sounds fun though right?!?!?! 19:53:04 to a degree 19:54:14 cpressey: i could multitask at, like, 10 HZ 19:54:18 DLWNOADIGN NTESBD URCCENT 19:54:21 that is Hz but in capitals btw 19:54:33 the 10 is also capitalised. 19:55:50 writing a Lisp for the C64, now THERE is a project. 19:55:59 Make it a Lisp OS for more fun! 19:56:01 cpressey: or a FORTH! wait, that just sounds easy 19:56:17 that just sounds ... easy ... and fun 19:56:19 the difference is in the GC! 19:56:25 cpressey: hahahahano 19:56:57 well you *could* do lisp without gc but, yeah, no. 19:56:57 cpressey: so uh can these assemblers output disk images or just .prgs? 19:57:26 Vice has a good command-line tool (c1541) for disk-imagery. 19:57:34 elliott: i typically output a .prg and have the overlying OS'es directory simulate a disk 19:57:46 meh, forths don't need disks! 19:57:48 Well, "good" and "good". The syntax of it is pretty horrible. 19:57:54 only BLOCKS 19:58:21 cpressey: is the kernal like the bios (you don't want to use it if you can help it, slow etc.) or like... uh... not that 19:58:22 elliott: (there is some tutorial-ish docs in my "ribos" project for how to build stuff with p65, fwiw) 19:58:37 SRY IM USING "OPHIS" ITS WEBT 2 19:58:37 elliott: basically yes 19:58:38 *WEBEB 19:58:42 cpressey: that uh 19:58:47 cpressey: there were two possible answers 19:58:54 basically it is like a bios 19:58:59 cpressey: oh joy 19:59:04 any docs on how to reimplement its shit myself? :-) 19:59:11 "you don't want to use it" is... not always justified 19:59:17 you can just not use it 19:59:46 what do you need it for? disk access? you can talk to the 1541 yourself 19:59:59 i don't want to access disk if i can avoid it, ever :) 20:00:10 SO YOU ARE WRITING A CARTRIDGE OK 20:00:21 you basically never need to use the kernel 20:00:31 *kernal! love that misspelling 20:00:36 and getting by without it is easier than getting by without BIOS when booting a PC :) 20:00:41 *kernal yes yes 20:01:16 ok my first program will switch it into that lowercase/uppercase mode 20:01:18 if i can figure out how! 20:02:51 do you want me to give you hints? 20:03:12 also: there are two books that are invaluable 20:03:15 (imo) 20:03:33 -!- FIZZIE64 has joined. 20:03:46 *applause* 20:04:00 this is not the most comfortable client evar. 20:04:24 cpressey: hints are nice yes 20:04:27 FIZZIE64: oh wow 20:04:34 FIZZIE64: how did you get networking working? 20:04:39 it also has some issues w.r.t. character case: my nick is lowercase here. 20:04:46 dhcp saved the day! 20:04:48 wow it responds to CTCP VERSION 20:04:54 FIZZIE64: but what network driver did you specify? 20:04:57 in the configuration 20:05:10 It is just "tfe.drv". 20:05:16 You don't need to use the configuration bit, though. 20:05:27 fizzie: really? 20:05:31 You can just use the directory browser, "execute" the TFE driver, then execute the DHCP client. 20:05:37 fizzie: oh 20:05:39 i'll try that 20:05:55 You'll want to have the Ethernet support enabled in VICE, of course. 20:06:14 i have it compiled in 20:06:17 do i have to do anything else? 20:06:33 You have to enable it from Options/Ethernet emulation/Enable Ethernet. 20:06:37 And you need to run x64 as root. 20:06:41 elliott: the kernal handles the uppercase/lowercase "mode" you refer to, and the easy way to switch it is to output a certain control character, via the kernal. 20:06:47 fizzie: which icon is tfe? :P 20:06:55 It's on the second page at least in my case. 20:07:07 "The Final Ethernet driver" or some-such. 20:07:38 Whoops, tried to say "/nick fizzie64" in hopes of getting a lowercase nick; it briefly said "not implemented" and dumped me back to C64 basic. 20:07:45 :D 20:08:23 fizzie: If I see no "Ethernet emulation", is that bad? 20:08:45 It at least sounds a bit suspicious; it should be under IDE64 emulation. 20:09:24 indeed none of that 20:09:28 is there some library i need? 20:09:48 libpcap-dev and libnet1-dev. 20:10:00 -!- FIZZIE64 has quit (Ping timeout: 276 seconds). 20:10:02 The configure script won't really complain if it can't find them, it just silently ignores you in that case. 20:10:06 yes that would help 20:10:14 It's very user-friendly that way. 20:11:48 "Error loading program: "irc.prg": Out of memory"." 20:13:41 http://zem.fi/~fis/cont.png -- none of those look very non-essential to me. Although I'm not quite sure what "Program handler" does. 20:14:40 fizzie: Reboot? :P 20:14:52 fizzie: Hey, what's that GTK font? 20:14:58 But I *just* got the DHCP client runninated! 20:15:00 Doesn't look like Ubuntu Sans... 20:15:08 fizzie: Also, duude, turn on CRT emulation. 20:15:13 It *should* be Ubuntu Sans, I haven't touched any things. 20:15:24 Oh, just aggressive hinting messing it up then :P 20:16:01 fizzie: Okay, seriously -- what's the full path to ethernet settings on yours? 20:16:54 You mean, menu-wise in VICE, or in Contiki somehow, or what? 20:16:57 VICE 20:16:59 "Options/Ethernet emulation/Enable Ethernet" in that case. 20:17:06 You said it was under IDE64 X_X 20:17:18 fizzie, what the hell are you up to? 20:17:24 Yes, by which I meant it's the menu entry under that one in Options. 20:17:29 At least for me. 20:17:42 Bleh. 20:18:00 Phantom_Hoover_: C64 IRCery mostly, I guess. 20:18:18 Oh it's --enable-ethernet. I think I had --with-ethernet. 20:18:40 -!- wareya_ has quit (Read error: Connection reset by peer). 20:18:49 fizzie: Is there an obvious place to check whether it decided I can has ethernet or not? 20:18:53 configure spews out a lot. 20:20:03 #define VICE_USE_LIBNET_1_1 in src/config.h could be a good sign. 20:20:22 -!- wareya has joined. 20:21:41 Indeed it has that now. 20:22:02 I haven't managed to get the IRC client started after that one time, though. :p 20:22:36 Last time I did start the configuration thing first, even though I wrote a wrong driver name and got an error about that; maybe I'll try that way again. 20:22:39 -!- sbszulu has quit (Ping timeout: 264 seconds). 20:22:50 It's just that the thought of C64 doing DHCP is so funny. 20:23:30 fizzie: c64 needs network booting 20:23:35 Or maybe I should re-fetch that .d64, in case it got corrupted by a crash; nowadays I get an error already in welcome.prg. 20:23:48 fizzie: We're talking PXE64 here. 20:23:58 Is PXE x86-only? 20:23:58 extracting the netbsd current sources into /usr/src oh boy oh boy 20:24:50 "The 2.1 version of the specification assigns architecture identifiers to six system types, including IA-64 and DEC Alpha. However, the specification only completely covers IA-32." 20:25:00 So it's not x86-only in theory, just in practice. 20:25:03 Well, whatever, custom protocol then. 20:25:07 It would be amazing. 20:25:28 fizzie: I have Ethernet now! Also: DUCKS! 20:26:19 TFEARCH: ERROR opening adapter: 'eth0: You don't have permission to capture on that device (socket: Operation not permitted)' 20:26:23 fizzie: I need to run it as *root8? 20:26:25 **root*? 20:27:02 fizzie: No, seriously, do I? 20:27:17 i bleev he said earlier you do 20:27:47 < fizzie> And you need to run x64 as root. 20:27:48 Yes, yo do. 20:27:49 < fizzie> And you need to run x64 as root. 20:27:51 lawl 20:27:57 cpressey: AND YOU NEED TO UXN IRJ5J39056J39045J9034J534905J90345J35J03UJ534905J90345JIOSWTJKPWE]P5JMWEROPJMIOWERJOAP 20:27:58 ioastjheuioj 20:28:01 TOAST 20:28:08 TOOOOAAAAAASSSSST 20:28:14 c64 has driven me insane TOAST 20:28:52 netbsd has TESTS. 20:28:54 Maybe you could arrange for the net-raw capability. 20:29:00 fizzie: Sweet, root has their own VICE configuration. 20:29:11 You neglected to tell me THAT :P 20:29:13 -!- zzo38 has joined. 20:29:35 fizzie: I want RR-NET compatibility, right? 20:29:46 I don't think you do. 20:29:57 At least this Contiki 1.2 has the plain TFE driver. 20:30:08 It's bootin'. 20:30:09 It might have both, 'dunno. 20:30:12 It's Putin. 20:30:22 cpressey: why does the c64 even have an uppercase mode 20:30:26 the fancy characters are useless :P 20:30:36 elliott: no they are totally cool 20:30:41 USELESS 20:30:50 Also, used a fresh .d64, went through the configurations, ran irc.dsc: "Main CPU: JAM at $45D4. [Reset] [Hard Reset] [Monitor] [Continue]" 20:31:13 fizzie: nondeterminism, gotta love it 20:31:43 Maybe I *need* to use the wrong driver name, then run the right driver manually, and that via the file browser (not directly with the 'run program' menu). 20:31:58 What run prorgam menu? 20:32:04 *program 20:32:06 Oh that menu. 20:32:14 I like how half the character set is just the first half with every byte EOR $FF, apparently legacy from the blinking cursor implementation on the PET 20:32:39 cpressey: btw the petulant cursor hurts my eyes 20:32:45 they could have just used something like extended background colour mode on the VIC and 64 20:34:30 haha netbsd current sources! ok now i have to read src/UPDATING 20:34:52 cpressey: if this works, I am so going to abuse my powers to turn your machine into Debian/NetBSD. (actually not but that would be cool) 20:37:54 fizzie: holy shit it seemingly worked 20:38:57 elliott: Yeah, it always works on the first run, but never thereafter. 20:39:14 I'm not bitter or anything. 20:41:07 Wow, that scrolling is slow. 20:41:08 OH YEAH MOTD 20:41:37 Yes, it's the slow. 20:42:03 Section 495 of TeX: The Program says that \relax will be inserted in something like "\ifvoid1\else...\fi" that would otherwise require something after the "1". I have tested this, it is correct. But I cannot find out what part of the code in that section causes it to do that! 20:42:08 fizzie: So, uh, what's the *safe* way to join a channel? 20:42:17 "/join #esoteric" worked for me. 20:42:48 -!- ELLIOTT6502 has joined. 20:43:09 Out of superstitiousness, I'm trying the "write a wrong driver in the config screen" thing: but if it works, I'm going to be dismayed. 20:43:10 always strange how even th emulated versions of old hardware inexplicabl drop keys every now and then. 20:43:48 fizzie: all i did was boot it up, start the driver, dhcp then irc. however: i di have an ip addres, mask, dns server, gateway in th network configurtion f 20:43:52 from before 20:44:03 i configured i with the configurtion progam, not with the specific net configurton program. 20:44:09 the one on the dektop, i used. 20:44:09 Well, I'll see what happenses. 20:44:28 tthat was from a whil ago, but it had remembered. when i dhcpd the addrss it used was i think the one ientered before. 20:44:47 ELLIOTT6502: Quite the obnoxious nick you have thar. 20:44:49 and, uh, i lik how everything i writ is in uppercase here, mixed case in the input lne, nd loercase everywhere else. 20:44:58 gregor: i'm on a c64. fuck you. 20:45:01 Yes, now I get "Out of memory" again, after running the driver, DHCP (which worked okay) and irc.dsc. 20:45:18 fizzie: try buying mor ram you bum 20:45:26 Hey, can contiki use the REU? 20:45:32 dunno 20:46:21 Keyboard support in VICE seemed to vary for me. When I ran it on FreeBSD, it dropped keypresses. But WinVICE worked fine. 20:46:42 yeah well it's contiki i t's aesom enough it can do wht th fuck it want with my keypresse i dont give a shit 20:46:54 "*!")+ 20:47:00 |33 20:47:04 ### 20:47:07 |||| 20:47:08 But then, VICE doesn't do a lot of abstraction internally 20:47:17 wow 20:47:19 that crashsed it 20:47:28 *crashed 20:47:29 a line i put in 20:47:38 the whole emulator? 20:47:39 The C64 is not proper ASCII, that is why it doesn't work. 20:48:19 zzo38: Amongst all the reasons why it may not work, that seems like about the least likely. 20:48:42 cpressey: just, back to basic 20:48:51 moar reasonable 20:49:01 It is why it doesn't work correctly, I mean. Not why it crashed. 20:49:07 Gregor: it was actually because i input characters that evidently the irc client is not clever enough to convert or something 20:51:15 My computer is not receiving power 20:51:18 I don't know why 20:51:34 the MAN is keeping it DOWN 20:51:48 -!- ELLIOTT6502 has quit (Ping timeout: 255 seconds). 20:51:54 -!- sbszulu has joined. 20:52:29 -!- Mathnerd314 has joined. 20:53:02 sbszulu 20:53:17 sbszulu: do you speak zului 20:53:18 *zulu 20:53:42 Yes 20:53:48 oh 20:53:50 that was unexpected 20:54:08 I am Zulu from here in South Africa. 20:54:46 Why did you find it unexpected? 20:55:16 Dunno :P 20:55:21 sbszulu: hmm have you been here before? 20:56:46 No. First time. 20:57:07 sbszulu: this is a channel about esoteric programming languages, btw. 20:57:12 we get some people who don't know that 20:57:29 fizzie: i am totally loading the contiki homepage on a c64. well not a real c64 20:58:13 fizzie: woo dns doesn't work 20:58:15 let's try google's servers! 20:59:10 I noticed. 20:59:38 sbszulu: do you know our wiki? 20:59:40 -!- Sgeo has quit (Read error: Connection reset by peer). 21:00:06 I've been looking at it since I joined. 21:01:00 :) 21:01:18 sbszulu: have you made any esolangs yet? 21:02:30 Not yet. I'm looking forward to getting started with time. 21:06:26 -!- Sgeo has joined. 21:07:25 -!- FIZZIE64 has joined. 21:07:41 FIZZIE64: MY DNS NO WORKY 21:07:48 FireFly: ¬!£UJ())(||æłełæ³łł€ 21:08:03 Nice unicode 21:08:22 this time i tried to get a lowercase nick by writing in uppercase but got an erroneous nickname message 21:09:15 Pity. Oh well; you're on IRC from a C64. 21:09:31 FIZZIE64: |\→°£Ŧ⅛¥ 21:09:35 FIZZIE64: CRASH DAMMIT CRASH 21:09:36 it's only a model. i mean, an emulator. 21:09:37 FIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASH 21:09:40 FIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASHFI 21:09:40 ZZIE64: CRASH DAMMIT CRASHFIZZIE64: CRASH DAMMIT CRASH 21:10:12 don't know about dns though, i used an ip for this irc session, so far haven't even tried dns. 21:10:20 dns worked for me before 21:10:21 ëëëëëëëëëë 21:10:23 for irc 21:10:24 but now no 21:10:26 so no telnet or web 21:10:55 i would like to run this thing on, say, the c128 i have, but: no disk drive, no ethernet hardware. 21:10:56 -!- sbszulu has quit (Excess Flood). 21:11:44 FIZZIE64: I wonder why disabling the new luminances in the VIC-II settings makes the middle gradient smooth? 21:11:51 the c128 builds might not have the fancy desktop either. 21:11:58 -!- sbszulu has joined. 21:12:13 FIZZIE64: does it even support the c128? 21:12:38 -!- Zuu has quit (Read error: Connection reset by peer). 21:12:41 there are some versions of contiki. dunno. 21:13:12 it might even work in th c64 mode of the c128: it is pretty good when it comes to backward compat, i think. 21:14:17 FIZZIE64: do you actually need a disk for contiki? wouldn't it fit on, uh 21:14:19 a cassette? 21:14:22 probably not :P 21:14:33 i am a bit c64-workings-ignorant. 21:14:52 -!- Zuu has joined. 21:15:14 i have a cable that might work: it can be used to have a computer pretending to be a disk drive. 21:15:24 still, the networking thing i trickier. 21:15:34 FIZZIE64: just implement a networking-over-fake-disk-cable thing 21:15:42 communicate by writing and reading to odd filenames! 21:15:53 maybe with a serial cable and slip: there's a slip drivr in contiki 21:15:53 just a contiki driver and a linux program away 21:16:02 FIZZIE64: or that. 21:17:56 it would still involve a rs232 interface between c64 user port - pc serial. but that's simpler than an ethernet thing. 21:17:59 dear people who write wrapper scripts: please don't document the meanings of the options solely in terms of the system you're wrapping. it kind of defeats the purpose. thanks, -chris 21:18:41 cpressey: your line was too long for this client: it cuts of at "it kind of". 21:18:54 Shows up all proper here, though. 21:19:13 cpressey: McSweeney's would publish that. 21:24:42 Okay, C64 fans, this is your chance to tell me of all the things I ABSOLUTELY MUST do on it. 21:25:23 FIZZIE64: Hey, does the mouse emulation work in Contiki? 21:25:25 That would be cool. 21:26:03 i haven't tried. in theory i think some versions should support the 1351 mouse. 21:26:26 Hey, a demo written in Haskell: http://www.pouet.net/prod.php?which=52995 21:26:54 i did try enabling it in vice, but it only captured my cursor, that was all. 21:27:49 heh 21:27:52 googling contiki 1351 shows some contiki-2.x drivers, that's about all. 21:28:00 contiki 2 appears to not have the gui or something 21:28:01 :( 21:28:22 seems so. a shame: it looks so nice. 21:28:33 lawl 21:28:37 it wouldn't look nice on c64! 21:28:43 elliott: did you find that article? 21:28:53 coppro: not yet -- i'll keep looking, i swear :) 21:29:13 coppro: it's a very good article so i really do want to find it 21:31:26 -!- FIZZIE64 has quit (Remote host closed the connection). 21:36:03 i'm doin' it wrong 21:36:10 * cpressey starts over 21:36:57 Aww. 21:37:01 10 I=0 21:37:03 20 POKE I,I 21:37:05 30 I=I+1 21:37:07 40 GOTO 10 21:37:12 Unfortunately this is not quite as spectacular as I hoped. 21:39:15 Poke at 53280, you'll change the screen border color. 21:39:16 OK, I am PUZZLED! 21:39:44 fizzie: There's display hacks that involve poking it multiple times a redraw, right? 21:39:46 Or something? 21:39:53 cpressey's thing did something like that but with magic. 21:40:07 You can "open" up the borders; it's a fascinating read. 21:40:20 Integrating the circumference of a circle around a given axis should be its surface area, should it not? 21:40:33 -!- cpressey has quit (Ping timeout: 245 seconds). 21:40:46 fizzie: Can you do XOR in C64 BASIC? 21:41:13 http://www.unusedino.de/ec64/technical/misc/vic656x/vic656x.html 3.14.1 for screen border magic. 21:41:57 Nice. 21:41:59 But srsly, xor? 21:42:56 Perhaps not. 21:43:05 fizzie: Just plain OR? 21:43:15 fizzie: Or even *modulo*? 21:43:39 There's AND and OR operators. 21:43:57 Tell me it has modulo. 21:44:00 Try "print (1 and 5)" vs. "print (1 or 5)". 21:44:22 Oh fine, have it your way. 21:44:42 10 FOR I=10 TO 16 : POKE 53280,((PEEK(53280)+I)OR I) 21:44:43 20 GOTO 10 21:44:47 Let's see what this does. 21:45:06 Fails! 21:45:11 I guess I should have expected that. 21:45:17 fizzie: It's gotta have modulo! 21:45:58 -!- catseye has joined. 21:46:04 catseye: MODULO IN C64 BASIC, WHAT IS IT 21:46:21 elliott: it is not anything 21:46:25 DAYUM 21:46:44 10 FOR I=10 TO 16 : POKE 53280,((PEEK(53280)+I)OR I) 21:46:44 20 GOTO 10 21:46:46 ok this works as "AND I" 21:46:53 and does indeed produce snazzy inter-frame effects! 21:46:56 "snazzy" 21:47:37 You can compute X-(Y*INT(X/Y)) for a modulo, in case you don't mind waiting billions of cycles. 21:49:07 40 IF I>15 : I=0 21:49:11 * elliott boggles that this is invalid syntax 21:49:19 Do I need a goto in there or something? 21:49:31 THEN instead of : 21:49:35 heh 21:49:49 okay NOW it's snazzy 21:49:51 Yeah, it's an IF-THEN statement, not some sort of IF-: statement. 21:49:55 10 I=0 21:49:55 20 FOR J=I TO 16 : POKE 53280,((PEEK(53280)+J) AND I) 21:49:55 30 I=I+1 21:49:55 40 IF I>15 THEN I=0 21:49:55 50 GOTO 20 21:50:05 all i need is equally bad music 21:50:54 What does it do? 21:51:02 Phantom_Hoover_: makes the border flicker all sorts of fun stuff 21:51:06 around the basic "window" 21:51:09 *BASIC 21:51:18 multiple epilepsy-inducing colours per frame 21:51:35 elliott: the two books I was referring to are the "Programmer's Reference Guide" and "Mapping the Commodore 64". 21:51:43 catseye: ok 21:51:47 catseye: are you on CURRENT now? 21:51:57 fizzie: HAY CAN I STOP EXECUTING IT WITHOUT RESETTING (lawl) 21:51:57 elliott: not as such, no 21:52:01 (probably not, i guess) 21:52:15 elliott: Run/Stop+Restore 21:52:27 it's just a very soft reset though 21:52:57 I don't recall what VICE maps those keys to exactly 21:52:59 * elliott looks up commodore keyboard :P 21:53:12 Caps Lock+Backspace? maybe? 21:53:24 (also depends on your keymapping of course) 21:53:33 elliott: A simple 'esc' key might work. 21:53:38 I think that's where VICE puts run/stop. 21:53:46 woo it works 21:53:51 Oh yeah 21:53:54 fizzie can have my firstborn 21:53:54 It's a basic program, it's terminatable with any sort of reset. 21:54:03 s/with/without/ 21:54:13 BASIC doesn't need a reset. Shows how long I've been not using BASIC! 21:55:05 Dear god, people actually *like* Garfield. 21:55:05 * Phantom_Hoover_ shivers. 21:55:06 fungot, comment. 21:55:06 -!- Phantom_Hoover_ has quit (Quit: Leaving). 21:55:07 Phantom_Hoover_: creed now thats totally subjective try them and see if they have an image in the same way 21:55:29 so apparently the 'bind' distribution comes with EVERY RFC EVER 21:55:47 -!- Phantom_Hoover_ has joined. 21:56:04 catseye: ew bind 21:56:27 -!- Phantom_Hoover__ has joined. 21:56:31 Dear god, people actually *like* Garfield. 21:56:33 * Phantom_Hoover__ shivers. 21:56:37 Dear god, people actually *like* Garfield. 21:56:37 * Phantom_Hoover_ shivers. 21:56:38 fungot, comment. 21:56:38 * Phantom_Hoover_ has quit (Quit: Leaving) 21:56:38 elliott: ( in various shapes and forms, e.g. counting the number of fnord very few albums/ v293/ bitwize/ 20051229.png 21:57:48 deja fnord 21:58:15 Phantom_Hoover__: < fungot> Phantom_Hoover_: creed now thats totally subjective try them and see if they have an image in the same way 21:58:15 catseye: i can't remember which one though ( scrol down)? tried toggling hardware/ software flow control on and off, etc. 21:58:52 Gyaah, I hate this connection. 22:00:07 -!- Phantom_Hoover_ has quit (Ping timeout: 245 seconds). 22:01:38 -!- tombom has quit (Quit: Leaving). 22:02:05 elliott: OK you must look up how to made bad SID music and do that 22:02:17 catseye: in BASIC? :D 22:02:28 yes! well, if you like. 22:02:33 it's certainly possible 22:04:12 The BASIC programming manual shows how to make bas SID music in BASIC, for example. 22:04:34 There's even a "for I=1 to 250" do-nothing loop for timing. 22:04:49 lawl 22:05:22 http://www.pouet.net/prod.php?which=30008 Ha ha, fuck you borders. 22:06:18 http://www.lemon64.com/manual/ 8.2 for an ugly HTMLization. 22:06:35 Though the Programmer's Guide is a lot better text indeed. 22:06:43 But, well, bad music. 22:07:19 There's a "DOLL CRYING" sound effect there, for example. 22:08:10 that looks WAY TOO COMPLICATED for the likes of ME 22:08:29 meanwhile 22:08:33 catseye: dude how the fuck do you use befos 22:08:34 It's just some POKEs. 22:08:48 catseye: when i jump to conway it's just a bunch of noise 22:08:50 and random characters 22:08:54 not the game of frikkin' live 22:08:56 *life 22:09:12 the legend works though 22:10:04 The C128 basic has a SOUND statement for bad music, but I don't think the C64 had it. 22:10:27 um so i'm cvs updating netbsd sources, right? it's got lua somewhere in it... i recognized the source files as it scrolled by 22:10:58 fizzie: indeed, it did not 22:10:59 catseye: HOWWWWWWWWWWWWWWERTYU 22:11:19 befos? 22:11:27 Oh, and the PLAY statement, which is what I meant. 22:11:34 it's... you boot it, and you press keys 22:11:38 the documentation sucks 22:11:54 i actually updated it recently to have a page with the key bindings listed on it 22:11:59 but haven't released that 22:12:04 why do you want to use befos? 22:12:36 C.f. http://www.commodore.ca/manuals/128_system_guide/sect-07c.htm#7.4.html HOW SIMPLE! 22:12:37 http://catseye.tc/projects/befos/README i see the bindings 22:12:42 catseye: 'cuz i ripped off its bootloader 22:12:43 I owe it 22:12:46 catseye: but seriously, how do you run programs? 22:12:48 elliott: they may or may not be accurate 22:13:22 -!- calamari has joined. 22:13:24 elliott: some key jumps to the start of the currently loaded page, treating it as it is a com file. that is pretty much all you get. 22:14:16 catseye: i forget, what exactly is befunge about this again? :) 22:14:42 elliott: there is supposed to be a befunge interpreter in there somewhere :) it never really got fully hooked up 22:15:00 http://catseye.tc/projects/befos/src/inc/befkeys.inc hell yaeh >_< 22:15:06 dwExecBeebInstr; 4100 F7 22:15:09 well let me tell you it's not that 22:15:54 ok life works 22:16:03 catseye: i like how life trashes the status line but not its colours :) 22:16:04 that is pretty much all you get 22:16:12 also: the seemingly inexplicable multiple characters used 22:17:20 catseye: well that was a thoroughly demented experience 22:17:23 port it to the c64 22:18:04 it would make more sense there 22:18:26 bbiab 22:20:47 catseye: whoa, if i put cli before my bootloader the zeroes do different things 22:20:49 IT IS INEXPLICABLE 22:24:37 Anyone know of any bootsectors that go into protected mode? :) 22:27:54 I don't 22:29:54 olsner: WELL MINE'S GOING TO 22:30:03 since it's absolutely tiny right now, why not? 22:30:24 and it means i can write all of my kernel as 32-bit 22:37:47 Can you put multiple instructions on one line in nasm? >_> 22:39:19 I don't think it has any "split a line" things, so maybe no. 22:40:14 Aww man, the GDT is a world of pain. 22:40:31 !bf_txtgen calamari: People always thank me for the awesome BF text generator in EgoBot I obviously wrote 'cuz it's in EgoBot! 22:40:51 :) 22:41:32 -!- Wamanuz has quit (Remote host closed the connection). 22:41:34 it started off with much grander ambitions, but I suck at genetic programming 22:41:57 -!- Wamanuz has joined. 22:44:49 Also apparently it doesn't work right now :P 22:44:50 But imagine it was giving output. 22:44:55 elliott: how's the browser coming? 22:45:09 Mathnerd314: you should know i never stay on a project more than two days 22:45:15 apart from this os 22:45:21 MUST MAKE GREATEST BOOTSECTOR EVER 22:45:33 -!- Phantom_Hoover__ has quit (Ping timeout: 245 seconds). 22:46:05 so... badly? 22:46:18 Mathnerd314: it views webpages, and can click links and submit forms 22:46:21 what more do you need 22:46:48 a lot... I guess I'll stick to firefox 22:47:12 Mathnerd314: well anyone who likes firefox would never like kayak anyway 22:47:45 why? 22:48:20 Firefox is /okay/ 22:48:26 for being a bloated load of crap 22:48:53 Sasha: explain where the bloat is 22:49:07 the fact that it regularly uses all my available memory 22:49:17 especially when it's running 22:49:17 sounds like that browser might be pretty cool for a phone 22:49:22 explain where firefox's bloat is ahahaahahaha 22:49:31 everywhere? 22:49:34 an easier question to answer would be "explain where firefox's bloat isn't" 22:49:36 the answer being "nowhere" 22:49:44 * Sasha high-fives elliott 22:49:59 what do you use, elliott? 22:49:59 If you say Internet Explorer, get the fuck out. 22:50:13 although I assume it doesn't implement javascript and for some reason wikipedia decided to require javascript to view sections 22:50:14 I would have to use Wine to use Internet Explorer and that would be a major feat. 22:50:39 -!- zzo38 has quit (Quit: zzo38). 22:51:06 * Sasha uses Chrome and hates himself for it 22:51:46 nothing wrong with chrome 22:51:48 i use midori and hate it 22:52:08 Midori's okay 22:52:13 Just buggy. 22:52:18 i would hate to use midori on windows. 22:52:21 links2 -g 22:52:27 Why, exactly, does Firefox allow its extensions to do so much? 22:52:38 Sgeo: if it didn't you'd be asking "Why can't I get an extension to do X?" 22:52:48 also, putting "exactly" after questions doesn't make them easier to answer 22:53:02 Sgeo: The Firefox extension model is both an advantage and a disadvantage. 22:53:24 Sgeo: On the one hand, it lets you completely redo the browser to your liking. On the other, it lets you do precisely that. 22:53:25 i tried to use links2 -g a while back 22:53:28 it was... heh 22:54:55 elliott: how does that compare to your browser? 22:55:17 mine displays pages a lot more like real browsers, supports js and css fully, etc. :P 22:55:23 otoh, it has no UI. links2 does 22:55:33 (searching, "go to url"... all that useless stuff!) 22:55:40 -!- Zuu has quit (Read error: Connection reset by peer). 22:55:54 elliott: you wrote your own? 22:56:14 so it's text mode, or there is no interface at all? 22:56:18 cal153: gui 22:56:21 but it's just a web page in a window 22:56:21 google 22:56:26 you can click links and submit forms from there 22:56:28 gmail works etc 22:56:36 if you can get to it from google.com it works :) 22:56:55 What rendering engine? Your own? 22:57:06 -!- elliott_ has joined. 22:57:10 link? 22:57:16 oh my word 22:57:18 Wai 22:57:20 links2 has set itself as my default browser 22:57:26 lol 22:57:29 o.O 22:57:36 Oh, you didn't write your own browser 22:57:38 didn't know it could do that! 22:57:40 Unless you did 22:57:43 Sgeo: i did 22:57:48 calamari: i blame debian 22:57:50 * Sgeo headaches 22:58:01 Your own rendering engine? 22:58:19 Sgeo: no, although i've sort of being trying to create that impression for my own amusement 22:58:28 in reality, it was just webkit + a scrollbar 22:58:56 but yeah, links2 -g isn't the greatest but the other day when trapped outside X, it was so nice compared to console 22:58:56 * Sgeo feels like he asks the important questions now 22:59:27 ah 22:59:42 which makes the accomplishment of working with gmail much less impressive :) 22:59:57 but hey, it's smaller than links2, if you ignore all the python, webkit and gtk libraries underneath 23:00:29 so what we (don' 23:00:34 Ok. Instead of full compatibility with all XUL-based browser extensions, how about compatibility with a subset that doesn't use whatever features touch the GUI significantly 23:00:47 so what we (don't) need is a web browser written in an esolang 23:00:48 fungot: what did you do to cal153? 23:00:49 elliott_: and now i regret mapping caps-lock to ctrl, or hit c-x b and type the code " int foo ( char x) return fnord 23:00:50 And maybe some that do if we can predict exactly what the effect should be in our browser 23:00:50 *calarmi? 23:00:57 -!- elliott has quit (Ping timeout: 255 seconds). 23:00:59 PSOX CAN DO THAT HRURURURRRRGHJ 23:01:07 Sgeo: lol 23:01:21 -!- Zuu has joined. 23:01:25 WTF LINKS2 DOESN'T SUPPORT FLASH WORST BROWSER EVER I'M UNINSTALLING IT AND RENAMING MY KITTEN 23:01:45 eh 23:01:49 Flash is okay 23:01:56 if you're into Flash 23:01:56 I do not understand blatant sarcasm! 23:02:10 * Sasha understands sarcasm okay 23:02:12 clearly not 23:02:15 * Sasha was adding input 23:02:17 calamari: i wonder if arachne compiles on linux 23:02:20 does it even support javascript.. seems link it was elinks that did 23:02:22 calamari: yes, yes it does 23:02:26 "It primarily runs on DOS based operating systems, but includes builds for Linux as well" 23:02:34 nice 23:02:47 hope it supports framebuffer :) 23:02:50 I used that browser once with a dos tcpip stack when my dad refused to run windows 23:02:58 At what point is Windows no longer DOS-based? Win9x, or WinME? 23:03:03 erm, Win2000 23:03:06 Sgeo: 2000 23:03:11 or nt 23:03:16 yeah nt 23:03:30 nt was around even in the 3.1 days iirc 23:03:38 o.O 23:03:47 "Available May 24, 2008 23:03:48 After more than 8 years since v1.66b, it's finally here...... 23:03:48 Arachne v1.93 for Linux (complete install package for svgalib)" 23:03:49 svgalib fuck yeah 23:04:08 http://en.wikipedia.org/wiki/Windows_NT_3.1 23:04:09 1993 23:04:11 first non-DOS-based windows 23:04:42 XP was when the advertised consumer edition of Windows became non-DOS based 23:04:43 * Sasha sorta liked DOS 23:04:45 being the first consumer NT OS 23:06:22 the rumors of svgalib's demise are greatly exaggerated 23:06:28 What was wrong with NT from a consumer standpoint? 23:06:37 What about aalib? 23:06:44 Why is the sky blue? 23:06:48 Why is the green grass green? 23:06:55 libcaca is more fun 23:06:57 Why is red not the colour you see when you die? 23:07:00 elliott_, those questions have answers. 23:07:03 Why is my keyboard not made of jelly? 23:07:03 Erm 23:07:28 has anyone ever gone into protected mode using assembly before? 23:07:30 BECAUSE THIS IS KILLING ME 23:07:33 Why does a bear not sh!t out the pope? 23:07:51 < elliott> Anyone know of any bootsectors that go into protected mode? :) 23:08:21 -!- sbszulu has quit (Ping timeout: 240 seconds). 23:08:24 better do it after you'r done with using BIOS calls, I think 23:08:26 catseye: I MAY BE TRYING TO WRITE ONE OK 23:08:32 catseye: yeah i am done with bios calls at that point 23:08:39 catseye: i've loaded the kernel and would normally jump there 23:08:46 but i'm thinkin', i've got space, why not set up the gdt first? 23:08:48 ElliottOS is actually going forward? 23:08:57 and arrange so that KERNEL_SEGMENT:0 is in the code part of the gdt 23:09:00 Sgeo: no, this is Tempo 23:09:09 it's like elliottos but at least 50 times less ambitious 23:09:10 more like 500 23:09:13 -!- sbszulu has joined. 23:09:48 catseye: basically what's gonna happen is that instead of "t!" meaning "loaded, time to jump", "t" will mean "loaded" and "!" will mean "in protected mode, time to jump" :) 23:10:01 catseye: hmm, which actually means that i'll be jumping to another part of the boot sector, which puts the ! there 23:10:05 catseye: and *then* jumping to the kernel 23:10:06 but whatever 23:10:15 I just want some tips on setting up a gdt table in asm without going insane :) 23:10:47 I think you but some bytes in memory and set a register to point to it 23:11:19 olsner: i knew that part :) and LGDT too 23:11:22 not register 23:11:26 it's an instruction 23:11:29 then you set the low bit of cr0 23:11:36 then you jump into the code segment 23:11:36 but uhh 23:11:42 it's more the bytes in memory i need some help with 23:11:58 all the examples of gdts i've seen have nice C structures, and then an awful c function that packs the values in a perverse way 23:12:01 which isn't much help 23:12:08 i *could* run through the c code and print out the result, but... bleh 23:12:23 Well, LGDT is "Load Global Descriptor Table register", so it's still a register. 23:12:41 well... right 23:12:52 but yeah, uh, i'm kinda lost. 23:14:30 Well, you know, the segment descriptors have a very simple layout: http://zem.fi/~fis/segdesc.png 23:15:23 Don't you just love it how they've interlaced the base address and limit together like that. 23:15:37 Yes. 23:15:38 Yes I do. 23:16:34 fizzie: "Supposedly" it should be ~omg this simple~ to get a flat 4 gig address space: 23:16:35 GDT[0] = {.base=0, .limit=0, .type=0}; // Selector 0x00 cannot be used 23:16:35 GDT[1] = {.base=0, .limit=0xffffffff, .type=0x9A}; // Selector 0x08 will be our code 23:16:35 GDT[2] = {.base=0, .limit=0xffffffff, .type=0x92}; // Selector 0x10 will be our data 23:16:35 GDT[3] = {.base=&myTss, .limit=sizeof(myTss), .type=0x89}; // You can use LTR(0x18) 23:16:45 But, uhh, then it has an awful C function for packing that. 23:16:50 So lawl. 23:17:21 looks like javascript was removed from links2 in 2007 :( 23:17:56 * Sasha uses Chrome with a no-script-like addon 23:17:56 -!- Behold has joined. 23:18:07 elliott_: found some stuff: http://gist.github.com/657234 23:18:24 olsner: struc? fuck that shit 23:18:44 < elliott_> has anyone ever gone into protected mode using assembly before? 23:18:49 i mean here 23:18:51 "using assembly" 23:18:51 personally 23:18:51 :) 23:18:56 catseye: i.e. no C code to build the gdt 23:19:03 manually writing it 23:19:10 -!- sbszulu has quit (Ping timeout: 252 seconds). 23:19:19 elliott_: actually, the "struc" is completely unused afaict :D 23:20:47 Sasha, Chrome has its own no-script-like feature 23:20:54 You don't need an addon 23:21:06 olsner: heh 23:21:26 Sgeo: noscript also lets you add things to a whitelist without going into preferences etc. 23:21:30 (note: i don't use noscript) 23:21:37 olsner: still, though, it packs things itself 23:21:43 so it's just the define_descriptor that expands to dw/db and makes constant data of it, then the rest of the code just refers to it where it got loaded by the boot sector 23:21:44 -!- BeholdMyGlory has quit (Ping timeout: 240 seconds). 23:21:50 elliott_, so does Chrome's feature 23:21:58 hmm looks like you're right 23:22:03 Sgeo: i haven't seen it 23:22:11 dunno if that's shorter or longer than the shortest code for writing it into memory 23:22:25 olsner: it's just that i'm in a bootsector, and i already have floppy reading and screen output code, so i don't have space for packing and other silly things :) 23:22:36 Do not allow any site to run Javascript 23:22:42 Then go to a site that uses Javascript 23:22:48 You'll see a thingy in the address bar 23:22:50 olsner: i *could* load the gdt from sector 2 of the floppy but no :) 23:23:02 -!- sbszulu has joined. 23:23:43 olsner: yeah my current bootloader, sans the loads of zeroes after it and the bootable header, is 71 bytes 23:23:54 last two bytes have to be the bootable header 23:23:58 so i have 439 bytes free 23:23:59 which is a lot, really 23:24:20 yeah, you need like 30 bytes for the constant data in this program, I think 23:24:21 olsner: The struc is not only unused, it's mostly just misleading: part of the segment limit (the top four bits) is in the field it calls "access" -- the f in those 0xcf values in the macro invocation -- and the macros RX_ACCESS and RW_ACCESS, despite their name, actually go in the "flags" field. 23:24:35 olsner: did you write this? 23:25:12 yes, as I remember it I did - but obviously the struct definition is borrowed from somewhere, the macro might be too 23:25:19 False documentation should be a capital offense. 23:25:25 * Sgeo proceeds to give himself a lethal injection 23:25:31 olsner: give me all rights to use it and license it however i want etc.? :P 23:25:35 OR ELSE 23:25:45 i'll put ; thanks olsner in :P 23:26:02 ; thanks to cpressey and olsner 23:26:02 ; without whom i would have had to actually learn how to do this myself 23:26:38 olsner: that align 4 is vaguely worrying 23:27:02 if i want to align it i should have the right number of instructions MYSELF! 23:27:40 elliott_: go ahead and use that if you want, just don't complain if it doesn't work :) 23:27:54 olsner: Or, to fix my previous statement: parts of the segment limit are in the struc field "granularity"; I got confused because the struc calls the two fields "access, granularity" while the macro comments call them "flags, access"; I like it how they use the same word "access" for two different places there. 23:29:00 olsner: what is that access field? 23:29:02 0xCF 23:29:09 IIRC, To get limit of FFFF FFFF, you need to set all limit bits to 1 and also set the granularity bit. 23:29:13 Anyway, it's not really a complicated thing at all: just bits in fields. You would have gotten the format from either the Intel or the AMD docs. 23:29:27 fizzie: i know but the gdtr stuff sorta broke my brain. i'm new to this! 23:29:39 elliott_: magic constant, see the ia32 docs :D 23:29:45 0xcf sets four top bits of limit to 1, and the granularity and 32-bit operand size bits. 23:29:53 i, uh, wow 23:30:02 db 0xCF ; access^Wcargo cult magic number! 23:30:26 "G" and "D/B" as well as "SegmentLimit 19-16" in http://zem.fi/~fis/segdesc.png 23:30:45 CF as byte 6 means Granularity Default/big, bits 28-31 of limit are 1111. 23:30:55 Oh gawd, more segment stuff. 23:30:56 * elliott_ shivers 23:31:04 I wonder what I meant by "Type", and arbitrarily calling 1010 "cs" and 0010 "ds", but that would be various read/write/execute bits I suppose 23:31:25 what's the offset in gdtr? 23:31:35 >__> 23:31:52 * elliott_ decides to ignore the idt forn ow 23:31:54 *for now 23:32:30 wait... i actually have no idea what the offset is 23:32:37 see this is why i like the idea of unreal mode way better 23:32:53 catseye: i do too, except, i like protected mode since you can rearrange memory but at the same time 23:32:54 right now 23:32:58 would totally like unreal mode 23:33:06 but uh 23:33:17 "To enable unreal mode without using any undocumented features of the CPU, the program has to enter protected mode, locate a flat descriptor in the GDT or LDT or create such, load some of the data segment registers with the respective protected mode "selector", then switch back to real mode." 23:33:18 so 23:33:19 NOT EASIER 23:33:25 catseye: Except that in unreal mode you need to build a segment descrip... gah. 23:33:29 Also not Easter 23:33:52 olsner: hey your gdtr/gdt_end labels are the SAME 23:33:54 fizzie: well yeah, but you don't really have to know what it *means* 23:33:57 i'm going to TAKE ADVANTAGE of THAT 23:34:12 * Sgeo is PLUS FIVE INSIGHTFUL 23:34:17 catseye: As shown here, you don't really have to know what it *means* either, as long as you can steal someone else's flat-memory-mode descriptor values. 23:34:18 23:34:19 can the offset be zero? 23:34:20 elliott_: that's... the address where the boot sector loads this code plus the offset within the code block where the gdt data starts, and looks like it's just a 32-bit absolute physical address 23:34:25 fizzie: true. 23:34:27 i.e. dd gdt rather than dd gdt+0x800 23:34:34 olsner: ok, well, in my case, i'm *in* the boot sector. 23:34:44 so modify the offset :D 23:34:49 olsner: to, what, zero? 23:34:53 dd gdt? 23:35:01 er no wait 23:35:02 uhh 23:35:12 olsner: your code is inexplicably org 0 23:35:20 so would it be dd gdt+0x7C00? 23:35:31 but no, since ... i have an org 0x7C00 23:35:36 i think it's just gdt 23:36:05 olsner: the best thing about this is that i load the kernel to a segmenty address 23:36:10 which i'm going to have to translate to a flat address 23:36:11 woop woop 23:36:20 hmm, setting org correctly might make the assembler make the right offsets automatically, maybe 23:36:21 "Microsoft based C++ programming is a big plus " 23:36:30 I'm having trouble figuring out what they mean by this 23:36:39 C++ 23:36:40 that 23:36:43 is what they mean. 23:36:44 but you have different 16-bit and 32-bit addresses of course 23:36:50 Do they mean C++/CLI? Do they mean Win32 APIs? 23:36:58 olsner: i'm not sure nasm lets you do bits 32 half-way through the file 23:37:02 olsner: even if it does, i'm not sure that's moral 23:37:04 Do they mean it only has to compile on a Microsoft compiler? 23:37:11 maybe i should put it in a boot32.s file 23:38:00 You can switch the "bits" mode mid-file, and it's... well, I'm not sure about moral, but something like that, anyway. 23:38:08 -!- sbszulu has quit (Ping timeout: 255 seconds). 23:38:10 some registers need to be zero when you go into protected right? 23:38:12 Sgeo: If the sentence contains the word "Microsoft", all bets are off 23:38:20 i'd quite like bx to persist to the other side 23:38:23 is it defined to? >_> 23:38:24 even if it's immoral it's probably the only sane way to write it anyway 23:39:20 * Sgeo can't imagine why any sane person would use C++/CLI 23:39:52 The evils of C++ syntax without the native compilation 23:41:11 elliott_: almost certain that none of the registers change values, even the segment registers retain their old real-mode values and behaviour after all 23:42:31 -!- calamari has quit (Quit: Leaving). 23:43:00 olsner: ha 23:43:21 olsner: ooh, they retain their real mode behaviour? excellent, I can just do this in protected mode 23:43:24 push KERNEL_SEGMENT 23:43:29 pop KERNEL_SEGMENT 23:43:31 jmp 0 23:43:33 erm 23:43:35 *pop ds 23:44:07 i was wondering if you were expecting the stack to magically translate the address for you, there 23:44:15 i... would love that 23:44:29 well, the invisible internal counterpart of ds doesn't change, but in protected mode segment registers take an offset in the GDT rather than an offset in memory 23:44:29 movebx,0xb8000 23:44:29 mov[ds:0xb8000], byte 0x43 23:44:29 incebx 23:44:29 mov[ds:0xb8001], byte 0x0f 23:44:33 wow now time to figure out what the hell that does! 23:44:47 olsner: LAME. 23:44:49 so wait 23:44:57 I wonder what happens if you read out the value after switching :) 23:44:59 i'd better set ds to uh 23:45:01 16 23:45:02 right? 23:45:06 before jumping into 32-bit code 23:45:10 since right now ds is vga memory :) 23:45:15 at this point in my program 23:45:58 no, setting ds to 16 before switching means ds has base 16*16, not that it gets loaded from gdt entry 2 23:46:27 olsner: so i should zero out ds then? >_< 23:46:29 i suck at this 23:46:51 if you set ds to vga memory, then do nothing, ds will still point to vga memory 23:47:11 olsner: but not work properly as a segment register since stuff would think it's part of the gdt? ok. 23:48:04 it will *work* and point to vga memory, it's the internal state that matters, you know... and that only changes when you explicitly set the segment register somehow 23:48:54 It will have a limit of 64k though, until you stick something else in there. 23:49:10 and the same weird stuff happens to the code segment, as you notice the cpu is somehow running code after setting protect enable without having changed the code segment to a protected-mode one 23:49:22 well 23:49:23 inc bx 23:49:23 inc bx 23:49:23 mov word [ds:bx], 0x0721 23:49:27 definitely doesn't work in protected mode 23:49:37 in fact, it does seemingly nothing 23:49:43 oh wait 23:50:06 no in fact it crashes 23:50:25 somehow 23:51:36 -!- Phantom_Hoover__ has joined. 23:51:40 Isn't "mov word [bx], 0x0721" the same thing as "mov word [ds:bx], 0x0721"? Not like you need a segment override for ds. Not related to your current problem, of course. 23:52:04 well, yeah, i was just cargo-culting olsner saying [ds:gdtr] :) 23:52:31 olsner: fizzie: you lie! if i don't set ds to 0 before protecting, it crashes 23:52:31 always 23:52:37 even if i just have x: jmp x on the other side 23:53:09 the protect enable crashes, or the jump into 32-bit code? 23:54:19 ah, jump, i guess 23:55:49 hmm, i have to do something with the a20 line at some point don't i? :P 23:55:50 I only know that when disabling protected mode, the internal segment registers retain their protected-mode age limits and bases until you load ds; maybe entering protected mode is more magical, then. 23:56:33 Protected mode checks the segments and freaks out as they are invalid? 23:56:37 You need to enable it, unless you want every other megabyte mirror its neighbour. 23:56:49 fizzie: before protected mode? 23:57:24 "Before enabling the A20 with any of the methods described below it is better to test whether the A20 address line was already enabled by the BIOS." 23:57:32 i wonder if i really have to do that, sounds boring :) 23:58:27 you can live dangerously i suppose 23:58:27 -!- Phantom_Hoover__ has quit (Ping timeout: 245 seconds). 23:59:02 I guess you can do it after protected mode too as long as you stay in the first megabyte. 23:59:19 not fixing a20 before using memory above the megabyte will be ... interesting :)