Search logs:

channel logs for 2004 - 2010 are archived at http://tunes.org/~nef/logs/old/ ·· can't be searched

#osdev2 = #osdev @ Libera from 23may2021 to present

#osdev @ OPN/FreeNode from 3apr2001 to 23may2021

all other channels are on OPN/FreeNode from 2004 to present


http://bespin.org/~qz/search/?view=1&c=osdev2&y=21&m=11&d=17

Wednesday, 17 November 2021

06:51:00 <zid> where's my bucket of blood
06:51:00 <zid> you guys are annoyingly slow
06:54:00 <jjuran> What? Go make it yourself.
06:55:00 <zid> It can't be my blood
06:55:00 <kazinsal> blood harvest cancelled on account of me having a new chorus pedal to futz around with
06:56:00 <sham1> Not enough donors
06:59:00 <zid> You don't have to get them to donate
07:28:00 <sham1> Involuntary donors are also not available
08:25:00 <graphitemaster> I really hate Python's lexical scoping
08:25:00 <graphitemaster> Wasted hours wondering why assignment to a global variable didn't work in a function because I need to declare it as global in the function.
08:25:00 <klange> :)
08:26:00 <junon> Better than lua
08:26:00 <klange> You're welcome to join me https://kuroko-lang.github.io/
08:26:00 <bslsk05> ​kuroko-lang.github.io: Kuroko
08:26:00 <junon> where everything is global unless you specifically say it's local.
08:27:00 <j`ey> klange: why does that print 1, if I hit enter?
08:27:00 <klange> Line number of your blank input
08:27:00 <j`ey> oh
08:28:00 <graphitemaster> How the hell do you even declare a variable in this thing lol
08:28:00 <klange> It prints a _lot_ of 1's in a normal session :D
08:28:00 <graphitemaster> I broke the language, browser locked up
08:28:00 <klange> I was complimented on the quality of the tutorial, so I would take a look at that.
08:28:00 <junon> let a = 10
08:28:00 <graphitemaster> All I typed was `E := False` and then the entire interpreter is dead :D
08:29:00 <graphitemaster> Weird, not happening now
08:29:00 <klange> That sounds like a browser problem and could well be in part of the somewhat-janky REPL setup.
08:30:00 <klange> The input is an Ace instance, which gives the highlighting - derived from their stock Python highlighter. Colorscheme is my own, the one I designed for my editor.
08:31:00 <graphitemaster> Yeah if I leave the REPL and come back after awhile it's just dead
08:31:00 <graphitemaster> That's the probllem
08:31:00 <klange> What browser?
08:31:00 <graphitemaster> Firefox
08:32:00 <klange> Anything of interest in your setup? Firefox is my main browser and I did all of the dev testing in it.
08:33:00 <klange> The main page runs code in a bog-standard WASM build of the interpreter, which runs on the main thread, so if it's busy it can potentially lock things up a bit - not made for heavy production code.
08:33:00 <klange> I built a web IDE, which runs code in a worker thread instead, it's usually a lot more cooperative.
08:34:00 <klange> The main page is meant primarily for clicking through the tutorial (it's interactive!)
08:36:00 <klange> Alternatively, you could do a native build, or grab a ToaruOS build from the last ~9 months.
08:36:00 <klange> But really I was just posting because Kuroko is literally a dialect of Python without the lexical scoping and you probably have other requirements for a language than just that one complaint :)
08:43:00 <graphitemaster> :|
08:43:00 <graphitemaster> Just a regular Firefox
08:44:00 <klange> Anything revealing in the dev console?
08:44:00 <graphitemaster> Yeah a bunch of "Could not write session state file" errors
08:45:00 <graphitemaster> Aside from that nothing
09:10:00 * geist senses one of those hard at work montages is happening somewhere as klange gets to the bottom of it
09:10:00 <zid> I'm going to make a web SATA, it's like an IDE but the commands are nicer and it's way faster
09:12:00 <geist> I’m going to build a larger than life 8253 PIT timer and use it as an alarm clock
09:12:00 <geist> Though actually i guess I want a RTC for that
09:13:00 <klange> MC146818A
09:13:00 <zid> Are you going to cheat and wire up a 555 inside it
09:14:00 <geist> I dunno, but I’m precisely thinking about one of those evil bad scientist 555 kits
09:14:00 <geist> Like a huge chip on the table, maybe with a little LCD on it
09:14:00 <klange> I remember something about an RTC that was originally intended for watches, and it was used in a computer by reading the segment lines and converting them back into digits...
09:14:00 <geist> Evil mad scientist that is
09:15:00 <klange> That had to have been from a CuriousMarc video...
09:15:00 <klange> https://www.curiousmarc.com/computing/hp-9825-scientific-computer
09:15:00 <bslsk05> ​www.curiousmarc.com: curiousmarc.com - HP 9825 Scientific Computer
09:15:00 <geist> klange: yeah, similarly my dad was telling me he had seen someone wire up a TI calculator chip inside a larger TTL circuit as the ALU
09:16:00 <geist> Essentially feed it digits and read out the display
09:16:00 <zid> 4004 was for a desktop calculator wasn't it
09:16:00 <geist> Yah basically
09:16:00 <zid> amd64 desktop calculator when
09:16:00 <geist> The big advancement there was it was done without being fixed function
09:17:00 <geist> There were fixed function calculator chips by then i believe. Or at least about the same time
09:17:00 <zid> I wanna see you solder 1300 pins
09:18:00 <geist> Actually curious now that you mention it if you can actually get a modern cpu socket
09:18:00 <geist> Like on alibaba or something
09:18:00 <geist> I’m guessing you can get a socket 7 or so pretty easily
09:18:00 <zid> I mean you could always make one out of a modern cpu socket and some desoldering wick
09:19:00 <geist> Yah though of course I’m sure they’re surface mounted, probably with lots of blind vias and a lot of layers on the board, so have fun using it
09:20:00 <zid> dremel
09:20:00 <zid> and bond wires
09:20:00 <geist> This 128 pin PGA socket i have for this 68030 is annoying enough as it is, though totally solderable
09:20:00 <geist> And usable with 2 layers, though it’s pretty annoying to route some of the inner layers out
09:20:00 <zid> I've seen a wire wrapped cpu
09:20:00 <geist> Was piddling with that in kinda the other day
09:20:00 <geist> Sure, lots of 60s and 70s stuff was wire wrapped
09:21:00 <geist> Can also wire wrap a bunch of TTL chips. Products were sold that way
09:21:00 <zid> I meant a modern one
09:21:00 <zid> Was a test setup so they could scope it
09:21:00 <zid> so it was soldered to the mobo on one end, and connected to the cpu at the other via 3 inches of wire
09:21:00 <geist> Oh side note, there’s a guy on YouTube that’s now building up a computer out of vacuum tubes
09:22:00 <geist> Pretty fascinating stuff, he does a good job explaining it
09:22:00 <geist> Predictably it’s huge
09:22:00 <klange> https://www.youtube.com/watch?v=pr6HTiWrMmk I think this is the specific video I was thinking of
09:22:00 <bslsk05> ​'Playing with an early LED watch chip from Texas Instruments' by CuriousMarc (00:22:08)
09:22:00 <zid> I mean it's not like the bombe or whatever was small
09:22:00 <geist> Yah i remember that one
09:23:00 <klange> TI watch chip powers an HP RTC module, which drives the watch chip by reading its segment output and pushing its "buttons".
09:23:00 <geist> Also looks like my buddy eric is back to fix the PS/2
09:23:00 <geist> I sat next to him at work for a couple years
09:24:00 <zid> The ps2/ is now fixed
09:24:00 <geist> Yah!
09:24:00 <klange> Didn't a lot of RTC modules use BCD specifically because it was easier to then use to drive segment displays?
09:24:00 <klange> And that's why that's still a gotcha listed on our wiki to this day~
09:25:00 <zid> binary to dec is sorta annoying to do at full width, when all you're doing is incrementing by 1 I imagine 'BCD' is easier
09:25:00 <zid> and by easier I mean fewer gates, which in 1970 is important
09:26:00 <zid> just wrap each digit at 9 or 6 or 2 or 1, bam
09:26:00 <geist> Yah i bet that’s true: if you’re driving a 7 segment then you can do the carry logic just as easily as binary but you have no conversion to actually display it
09:27:00 <geist> And really BCD is pretty nice for simple asm routines to display stuff on the screen, etc
09:27:00 <geist> In an 8 bit era at least, without proper divide or multiply or whatnot
09:27:00 <zid> 4 input AND gate or whatever to detect the overflow and connect it to a reset line
09:28:00 <geist> Hmm, did the bcd modes get removed in x86-64?
09:28:00 <zid> yea
09:28:00 <geist> Maybe those opcodes were recycled?
09:28:00 <zid> It's actually really annoying for emulation
09:28:00 <zid> you have to implement them now
09:28:00 <zid> *shakes fist*
09:29:00 <geist> Of course that then means what happens on a modern x86 machine under the hood when it’s in real mode and you do BCD math
09:29:00 <zid> I saw a great patch
09:29:00 <geist> Is there actually a BCD path in the ALUs or does it flip to some sort of slow ass microcode?
09:29:00 <zid> it was like case BCD_ADD: +#if 64BIT +*fuck loads of code*
09:29:00 <zid> #else if emit("adc");
09:30:00 <geist> But that’d be easy to tell with agner’s opcode tables if he tests the BCD instructions. If they’re usually slow, then yep. Microcode
09:30:00 <zid> They're usable enough for emulation, where decode and branching and crap is all the cost
09:31:00 <zid> and it's not like anybody cares about how fast displaying numbers is in their dos game when running it on a modern cpu instead of a 286
09:31:00 <zid> it's still running at 40000x speed
09:32:00 <geist> Whoa, flipped on battlestar galactica, that scene where tigh and adama beat the crap out of each other
09:32:00 <geist> Forgot how dark this show was
09:33:00 <zid> dark? isn't that the one where they use fake swear words and stuff?
09:33:00 <geist> Haha, well it was pre-streaming
09:33:00 <kazinsal> yeah, show debuted in like 2003
09:33:00 <zid> and I figured it was basically star trek, which was like, Hey Arthur! levels of moral lessons
09:33:00 <kazinsal> back then the only channel you could really say "fuck" on was HBO
09:33:00 <geist> Omg no. This is the 2003 era BSG
09:34:00 <geist> It was very much a product of its era, just after 2001
09:34:00 <kazinsal> oh yeah, definitely Space Nine Eleven
09:34:00 <zid> geist, watch made in abyss for me
09:34:00 <geist> Omg, made in abyss is so good
09:34:00 <geist> I’m so waiting for S2
09:34:00 <kazinsal> 70s BSG was more like Mormon Star Wars
09:34:00 <zid> I mean, S2 came and went, effectively
09:34:00 <geist> Some movie right?
09:34:00 <zid> yea
09:34:00 <geist> Need to dig that up, but i bet it’s hella grim dark
09:34:00 <zid> dawn of a deep soul iirc
09:35:00 <zid> It's hella grim dark
09:35:00 <geist> Haha okay, thanks for reminding me
09:35:00 <zid> Also I think the sound track to made in abyss is probably one of the best scores to anything ever
09:35:00 <geist> started watching Arcane yesterday on Netflix. It’s really nice looking
09:35:00 <kazinsal> Arcane is way better than I ever expected a League of Legends TV show to be
09:35:00 <geist> Unclear if the story will pay off, but it’s very well done
09:35:00 <zid> a couple of things lately have had some really good tracks, like zimmerman's inception theme and interstellar's organ thing
09:35:00 <zid> but made in abyss is just solid, every single track
09:36:00 <geist> kazinsal:yah basically
09:36:00 <zid> I read all the manga up to current, so I am basically at the end of S3
09:36:00 <kazinsal> and I say that as someone who (sometimes regrettably) plays the damn game
09:36:00 <zid> by.. riot games? wtf
09:36:00 <geist> Thankfully you don’t need to know the story at all, though i guess the little subtle references and character reveals are less impactful
09:37:00 <zid> league of legends is so absolutely shit of a game, and so exclusively played by toxic 13 year olds I won't touch it just on princple probably
09:37:00 <kazinsal> yeah, they've done a wonderful job of letting the story of the show do the worldbuilding
09:37:00 <kazinsal> helps that they honestly haven't given a real solid shit about the lore making sense up to this point so the show can retcon all the "quick, we need a blurb for this champion's background" lore
09:38:00 <geist> Yah they have something like 140 characters that just fight each other for random reasons? Not much lore there anyway
09:38:00 <geist> just give each a blurb and move on
09:39:00 <kazinsal> yeah, there's a whole bunch of worldbuilding and several eras of the game world that they've got slammed together
09:39:00 <kazinsal> prior to 2014 the lore was even more afuck because the game itself was canon in-universe
09:39:00 <kazinsal> but that was a nightmare to tell stories in so they canned that
09:40:00 <kazinsal> they're apparently working on an MMO which is probably why they're going back and slowly retconning the ridiculous stuff
09:40:00 <geist> I never looked at it much, it’s a moba right?
09:40:00 <kazinsal> yeah
09:40:00 <geist> If so, that 100% explains why I never played it
09:41:00 <zid> One that doesn't understand how rpgs work, which I always found funny, it has the exact same issues poe has
09:41:00 <geist> Well, if it’s a moba it’s not a rpg anyway right? It’s just this silly repeat of the same scenario over and over again
09:41:00 <zid> mobas are team based arpgs
09:41:00 <zid> You level up and buy equipment
09:41:00 <zid> to kill the other guy gooder
09:41:00 <geist> Right. The ‘rpg’ part i take a little bit of exception to
09:42:00 <zid> dota/hon/etc are 100% normal RPG systems
09:42:00 <geist> But i guess it has some aspects of whati’d consider a RPG, something like Baldurs gate or whatnot
09:42:00 <geist> Well… okay.
09:42:00 <geist> I guess definitions change over time
09:42:00 <zid> You get experience by killing monsters, you level up, allocate skills, buy equipment with like "+3 agi" on it etc
09:43:00 <zid> It's all based on warcraft 3
09:43:00 <geist> Well sure.
09:43:00 <kazinsal> by that metric fallout 4 is just doom with flavour text
09:43:00 <zid> fallout is an rpg yes
09:43:00 <geist> Yeah, i mean. I guess for lack of anything else and if that’s the defacto definition of it, then so be it
09:43:00 <zid> rpg as in "uses numbers" rather than "is like a D&D campaign"
09:43:00 <kingoffrance> "definitions change over time" well, key -> value the keys change :D
09:44:00 <kazinsal> everything uses numbers
09:44:00 <zid> it typically means the former, rather than the latter
09:44:00 <geist> But i generally put it more in the bucket of StarCraft or Warcraft or whatnot
09:44:00 <geist> Just has this additional scenario thing on top of it
09:44:00 <geist> Which of course is where it came from
09:44:00 <zid> I understand starcraft not being an RPG, it doesn't function like one at all, but.. warcraft?
09:44:00 <geist> Warcraft and starcraft are basically the same thing, IMO
09:45:00 <geist> Just different characters, different art
09:45:00 <zid> Have you played much of either?
09:45:00 <geist> Yes, far too much
09:45:00 <zid> so do you think they're both RPGs or neither are?
09:45:00 <geist> Neither are
09:45:00 <zid> Because neither are like D&D, or what?
09:45:00 <kazinsal> in what damn universe is a real time strategy game an RPG
09:45:00 <geist> No, because there’s no role playing, there’s no interacting with mobs, etc
09:46:00 <geist> Real time strategy
09:46:00 <zid> (I have very strong feelings about what constitutes a roguelike, personally)
09:46:00 <geist> That’s the word i was going for, but couldn’t think of it
09:46:00 <geist> To be a RPG has to at least have some sort of maybe quest like things, NPCs that you talk to, some sort of overall story, etc
09:47:00 <geist> MOBAs feel like a RTS with a specific scenario with a few RPG like things in it
09:47:00 <zid> I can understand being so old and cranky that you're telling kids to get off your lawn because 'RPG' has shifted to mean 'uses an RPG system to do numbers' rather than 'is like D&D'
09:47:00 <geist> In that you go buy upgrades, and there’s some thing you talk to, etc
09:47:00 <geist> but that doesn’t make it an RPG
09:47:00 <zid> I do the same with roguelike
09:47:00 <zid> but we at least convinced most people to use roguelite to mean the thing they're talking about
09:48:00 <zid> rather than polluting roguelike too badly
09:48:00 <geist> Right, which is why I don’t particularly think mobas fit the RPG mold that well. But at least ‘arpg’ exists as a term now
09:48:00 <geist> so I’m more okay with that, if arpg != rpg
09:48:00 <zid> so where does diablo rate for you?
09:49:00 <geist> Hmm… arpg, probably
09:49:00 <geist> It fits a lot of rpg checkboxes. You have quests,you can do go things on your own terms, there’s a story that you progress through, you can go back to the ‘town’, etc
09:49:00 <zid> despite essentially being baldur's gate
09:50:00 <geist> Right, which I’d consider to be a prototype semi modern RPG, at least CRPG (vs a JRPG)
09:50:00 <zid> I think your definition of RPG is just a touch too reductionist
09:51:00 <geist> Oh prolly. I mean I don’t make the rules
09:51:00 <zid> That's what RPGs are for ;)
09:51:00 <geist> But i think a moba is a moba. It’s a pretty specific thing imo
09:51:00 <zid> I think I'd best describe it as erm, an RPG is a game that uses the *mechanical systems* of a game that would have been an RPG in the 70s by your def
09:52:00 <geist> A weird quirk, a very specific type of game that was (is?) incredibly popular a while
09:52:00 <geist> Much like battle royals pvp stuff that was all the shit a few years back
09:52:00 <zid> BR is a stolen term too :P
09:52:00 <geist> Word.
09:52:00 <zid> so anyway, LoL doesn't even get its own mechanical systems correct
09:53:00 <geist> But of course it’s inevitable, some new type of game is invented, a few get really popular, and then over the next few years there are all the possible remixes
09:53:00 <geist> And then the lines get blurry, repeat.
09:53:00 <zid> instead of items having +3 agility or whatever, and each different hero/champ/whatever deriving different secondary stats from that (hero x gets 0.1 move speed per agilitye tc)
09:53:00 <zid> they just have items that are like +20 move speed, +10 attack speed, +3 damage per crit, ..
09:53:00 <zid> undermining their own system
09:54:00 <kazinsal> that's because a lot of stuff scales on base stats that scale by level
09:54:00 <zid> The more you have to do that, the worse you've fucked up your stat system earlier up the chain and are applying superglue and bandages when you do it
09:54:00 <kazinsal> so you have procs that will do eg. a bonus 70% base AD as physical damage because a bonus 70% total AD as physical damage is almost a full extra attack
09:55:00 <zid> no idea what any of that means
09:55:00 <kazinsal> which on characters who do large but slow attacks becomes a Problem fast
09:55:00 <kazinsal> if you don't know what it means you have no grounds to criticize the game mechanics imo
09:55:00 <zid> Because I don't know the terms the wiki uses? k
09:55:00 <kazinsal> that's the terms the game itself uses man
09:55:00 <geist> On the RPG note i started playing Disco Elysium again, and if there’s ever a modern classic that is a prototype CRPG that’s it
09:56:00 <kazinsal> literally what you get if you hover over a stat or an ability in the UI it will tell you what it is and what the scaling rates etc. are
09:56:00 <geist> It’s fantastic, and even better with the remix/remaster version
09:56:00 <zid> sounds like you're just salty cus I don't think they did it right
09:56:00 <zid> trying to gatekeep my ability to talk about it
09:56:00 <kazinsal> clearly it works fine otherwise the game wouldn't be wildly successful
09:57:00 <zid> yea and avatar is the best movie ever made
09:57:00 <kazinsal> taking a critical look at something requires understanding its structural components
09:57:00 <geist> Someone is in an argumentative mood tonight :)
09:57:00 * kingoffrance .oO( somewhere this same conversation happened, when they were discussing what constitutes a true bucket of blood, how is it to be used, etc. )
09:57:00 <zid> Just responding when spoken to
09:58:00 <geist> Heh
09:58:00 <geist> Anyway, disco elysium. Play it. It’s amazing
09:58:00 <zid> what even is it?
09:58:00 <geist> I think I’m going to spend next week on it
09:58:00 <zid> I tried to get back into borderlands 2 a bit, it's slower than I remembered it
09:58:00 <geist> It’s so classic CRPG. Much in the vein of the also fantastic Planescape: Torment
09:59:00 <zid> (another game that also has systemic issues with its rpg systems)
09:59:00 <geist> But I dare say it surpasses P:T
09:59:00 <zid> There was a crpg that came out a few years ago I started
09:59:00 <zid> I forget the name now it had the issue where it sounded like every other game coming out at the time and I confused all the names then gave up
10:00:00 <geist> There have been a few recently. An attempt to revive the genre really
10:00:00 <zid> I just remember the quest text being on little scrolls of parchment and faded in, like WoW
10:00:00 <zid> and I was chasing a ghost or something
10:00:00 <geist> Hmm, doesn’t ring a bell. But lots of indie stuff going on right now
10:00:00 <zid> was probably 2017
10:00:00 <zid> or 2015
10:01:00 <zid> so god knows how I'd find it
10:01:00 <geist> Ah 2017, a really good vintage of games
10:01:00 <zid> I just remember it being around the same time as pillars of eternity
10:01:00 <zid> but probably wasn't it
10:01:00 <geist> One of the better years
10:01:00 <geist> Yah pillars of eternity was iirc the same guys that did P:T previously, i think
10:01:00 <geist> Was kinda a new version, iirc
10:02:00 <zid> I also played a more actiony one which may have been Pillars, but I could have it totally backwards
10:02:00 <zid> Impossible to know
10:03:00 <geist> ahh. Torment: Tides of Numenera
10:04:00 <zid> I thought that was an MTG expansion
10:04:00 <geist> that was the sequel i was thinking of. came out in 2017.
10:04:00 <geist> i think the problem was it just wasn't that great
10:04:00 <geist> didn't live up to the hype
10:09:00 * geist vaporizes zid's Mitty
10:09:00 <zid> good
10:09:00 <zid> Now go watch the **** ***ing noises in part 2
10:09:00 <geist> yah now i have to find a way to get it
10:10:00 <zid> I mean, I could literally just drop the magnet link :p
10:10:00 <geist> speaking of old school CRPGS, i had read somewhere that the creator of made of abyss was really influenced by an early 80s series called Wizardry
10:11:00 <geist> which i do vaguely remember. they were hard as hell
10:11:00 <zid> everybody's infulenced by Berserk
10:12:00 <zid> wizardy is too old for anybody to remember
10:12:00 <geist> wlel, yeah, but the guy explicitly said he was
10:12:00 <geist> so... that's the point
10:15:00 <zid> made in a abyss is basically "imagine berserk, but with really upbeat cheery children having the same happen" :p
10:16:00 <geist> which berserk are you talking about?
10:17:00 <geist> there are lots of games called berserk, it appears
10:19:00 <zid> the manga
10:20:00 <zid> https://en.wikipedia.org/wiki/Berserk_(manga)#Legacy
10:20:00 <bslsk05> ​en.wikipedia.org: Berserk (manga) - Wikipedia
10:20:00 <geist> ah
10:21:00 <zid> If you're the direct influence for Cloud in FF7 and also dark souls
10:21:00 <zid> you win
10:22:00 <klange> After trying to pretend to be a microkernel by having my disk I/O send "requests" to a "disk server"... I've thrown out the whole lot and just slapped some dumb mutex around the read/write routines
10:22:00 <zid> Imagine if geiger was japanese and made manga, basically
10:22:00 <zid> https://pbs.twimg.com/media/ESBh9zoWAAAMx6h?format=png&name=4096x4096
10:22:00 <klange> it still takes about a minute to install gcc, but a lot of that is down to the ext2 driver being deranged...
10:24:00 <klange> Still have wrong block numbers for my inodes, and while I know why I've run into issues with not understand the rest of my code (I wrote it a loooong time ago) trying to fix it, so I'll need to re-learn how this stuff works
10:25:00 <geist> and here we are talkin about cartoons
10:25:00 <zid> klange always interrupting cartoon time smh
10:25:00 <geist> only dem dum kids watch them loony tunes
10:25:00 <klange> (i_blocks includes the blocks used for block pointers... so in quite a few cases I'm missing the first indirect block, which is ^ those off-by-eight errors, and in large files I would be missing some additional number of blocks for the triply-indirect ones...)
10:25:00 <zid> klange: love that part of coding
10:25:00 <zid> "I'll just rewrite this, I'll understand it by the end, and it'll probably be better anyway" is my usual motto
10:26:00 <zid> If I can write it badly once, I can write it badly twice, but with some hindsight too
10:30:00 <klange> Sometimes I manage to write it something akin to "not badly" the second time.
10:30:00 <zid> It just hasn't been rewritten enough, on the 4th go you'll realize how bad the 2nd was
10:30:00 <klange> There's a lot of "try, and try again" in ToaruOS. The compositor, the kernel, the network stack...
10:32:00 <klange> Hopefully the shell can get this treatment, based on all the stuff I learned building Kuroko...
10:45:00 <geist> I generally think that trying and trying again is a great way to really get hard earned experience
10:45:00 <geist> Perhaps not the most efficient way but its good expertise
10:58:00 <zid> It's just a really effective way to learn what the pinch points are
10:58:00 <zid> whether your fundamental object should be a 'thing', a 'collection of thing', or 'blah', etc
11:01:00 <zid> Like, going into a vfs blindly you might either pick to deal in filesystem objects, or maybe a stringmap, or some abstract thing where a bunch of code is in the fs etc, and until you've really written it it's hard to say what works the best
11:01:00 <zid> or at least have an idea of what the costs of various tradeoffs end up being
12:40:00 <zid> I should figure out how to write .sys files at some point
12:40:00 <zid> I don't wanna use the ddk and crap
12:41:00 <zid> I think --image-base and --entry overrides and stuff should be enough and then just link to ntoskrnl?
12:42:00 <klange> sitting here scratching my head for the last three hours trying to figure out why my disk stuff wasn't working in virtualbox
12:43:00 <zid> did you forget to connect a drive
12:43:00 <klange> staring at the stats logs, the status bits, etc., and everything is saying it's reading just fine, but I'm getting nothing
12:44:00 <klange> turns out I had a tiny little... critical bug where I was allocating 0 bytes for something and ending up with [sort of] a null pointer that I was handing to the disk controller
12:45:00 <klange> qemu was fine with this I guess? but virtualbox was just like nah
12:45:00 <j`ey> heh, I just had a very simlar bug with virtio.. allocating a buffer of 0 bytes, and the allocation failed but I didnt notice
12:45:00 <j`ey> and nothing was being read
12:46:00 <klange> anyway... can boot to a real disk in VirtualBox now, though I need a boot CD at the moment - need to adapt my loader... not so much to support disks, but to support ext2.
12:46:00 <klange> also I haven't tested any of this behind the partition mapper, I've just got a raw ext2 slapped right at sector 0
12:47:00 <j`ey> and I also forgot to include the linux kernel CONFIG_DMA_RESTRICED_POOL option so it crashed after I fixed that bug anyway
12:49:00 <zid> I really need to work on my shit a bit soon
12:49:00 <zid> I wanna add some networking syscalls so that userspace can implement something interactive / useful
12:50:00 <klange> I have... a bit under a month and a half to check off as many boxes as I can before The Deadline arrives.
12:50:00 * j`ey is doing Work not Hobby D:
12:50:00 <zid> Za Deddorainu!
12:51:00 <klange> 締切
12:52:00 <zid> 締め切り
12:54:00 <klange> Would be nice if I could have an installer so you can throw an empty disk at VirtualBox, as its wizard allows, boot the live CD, format the disk as ext2 after clicking several buttons to confirm you're not trying to do this on a real disk or something...
12:54:00 <zid> online installers are too modern
13:02:00 * kingoffrance head explodes wondering what definition of online zid means
13:02:00 <kingoffrance> online got modernized too
13:15:00 <kingoffrance> well, there's your bucket of blood :)
13:37:00 <sham1> [14:44] klange: turns out I had a tiny little... critical bug where I was allocating 0 bytes for something and ending up with [sort of] a null pointer that I was handing to the disk controller
13:37:00 <sham1> And this is why you test on multiple different systems and VMs
13:38:00 <sham1> See, had you only tested on Qemu, you wouldn't have discovered that bug. I think we can all learn something from this
13:41:00 <zid> Nah that's why you bug() if malloc fails :P
13:41:00 <zid> or if malloc is given a 0, etc
13:44:00 <sham1> Emit an ud2 if malloc is give 0
13:44:00 <sham1> After all, it's undefined behaviour
13:44:00 <zid> ud2 doesn't do much in kernel space
13:45:00 <zid> throw.. yourself.. an irq.. that you knew you were going to send..
13:45:00 <zid> might turn into a triplefault too
13:45:00 <sham1> Well kernel panic
13:45:00 <zid> ye, bug()
13:45:00 <zid> BUG_ON() in linux I think
13:46:00 <sham1> Of course one could also just do the sensible thing and just return NULL
13:46:00 <zid> I tbh don't recommend it
13:46:00 <zid> have a malloc that can maybe, but I wouldn't do it on the default one
13:46:00 <zid> almost all of the time if you can't grab the resources you need for kernel structures, your kernel's in too fucked a state to continue
13:47:00 <zid> and adding all the NULL checks everywhere is both error prone and inflates code size
13:47:00 <sham1> Hm
13:48:00 <sham1> Mayhals
13:48:00 <sham1> Mayhaps
15:17:00 <zid> klange: how do you tell apart computer and bypass capacitor in japanese
15:29:00 <zid> also, I need to figure out how to develop a windows driver without horribly crashing my desktop every 20 seconds
15:40:00 <zid> speaking of toggling random i/o ports, what do we think happens if I try to toggle A20 on a running 64bit windows machine? :P
15:48:00 <lukflug> Good afternoon!
15:48:00 <lukflug> Recently there OSDev.org was down for a while. After the downtime, I tried to log in, but it seems like my account doesn't exist anymore. The account was around 2 months old. I never posted in the Forums and only made two wiki contributions, so I doubt that I have been banned. I've contacted support@osdev.org 10 days ago, but haven't gotten a
15:48:00 <lukflug> response since. Should I wait more, or what are the recourses I could take?
15:48:00 <lukflug> Thanks a lot!
15:49:00 <zid> I wonder if it died and rolled back
15:49:00 <zid> but, it's just 'some dude' who runs the forum
15:49:00 <zid> you'll need to ask him
20:36:00 <geist> fwiw i think my account is gone too, but may have been before the recent shutdown
22:51:00 <klange> chase deleted all accounts without posts a few weeks ago to purge the massive number of banned spambots
22:57:00 <klange> zid: パソコン / パスコン? Well, they're different words for one, how do we tell the difference between lift and left in English? If the pronunciation isn't enough (they have different pitch accents, too), context clues... and I'm not even sure パスコン is a particularly common term, but I don't work with electronics very often, and never in Japanese anyway.
22:57:00 <heat> geist: lots of fuchsia this year at llvm!
22:57:00 <heat> surprising!
23:22:00 <geist> oh yay
23:23:00 <geist> i only knew about petrs talk
23:23:00 <geist> i should go watch it. is it avail online?
23:23:00 <geist> klange: hmm, but i've edited stuff on the wiki. did he ban because of lack of forum posts?
23:25:00 <heat> geist, petr didn't gave his yet, there was some guy (forgot the name) talking about relative vtables
23:25:00 <geist> oh yeah, that's neat. we're using that already
23:26:00 <klange> He didn't ban anyone.
23:26:00 <geist> er yeah delete. sorry
23:26:00 <heat> you get horrible x86 code though, which is a shame
23:27:00 <klange> Wiki edits were not considered, which, yeah, oops on chase's part
23:27:00 <geist> yah though branch predictor probably will end up doing basically the same thing
23:27:00 <klange> Just re-register a new account with the same name, go post somewhere so I can approve you and you have _a_ post, and things should be fine.
23:30:00 <klange> all booted up with a bunch of packages installed on disk in virtualbox: https://klange.dev/s/Screenshot%20from%202021-11-18%2008-29-14.png
23:31:00 <heat> with all due respect, why are we relying on someone that isn't a part of our community to host and admin the forums?
23:31:00 <heat> and wiki
23:32:00 <klange> Because he's done it for the last twenty years and owns the domain names.
23:34:00 <heat> why not give the domain to someone that's active?
23:34:00 <heat> and willing, of course
23:38:00 <klange> You would be barking up the wrong tree asking _us_ that :) I've offered, I think geist has even thrown his hat in the ring...
23:40:00 <moon-child> make a new domain
23:40:00 <moon-child> missed opportunity to get os.dev when the latter tld came out
23:42:00 <heat> it's a fedora webserver test page :(
23:49:00 <geist> yah as much as i dont want to be forced to admin something, i wouldn't mind footing some part of the bill if it's reasonable