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=osdev&y=18&m=5&d=27

Sunday, 27 May 2018

00:00:00 --- log: started osdev/18.05.27
00:03:20 --- join: oldtopman (~oldtopman@unaffiliated/oldtopman) joined #osdev
00:05:44 --- join: Guest4630 (4d3b9548@gateway/web/cgi-irc/kiwiirc.com/ip.77.59.149.72) joined #osdev
00:08:46 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
00:12:32 --- quit: variable (Quit: /dev/null is full)
00:12:45 --- join: NaNkeen (~nankeen@115.164.203.138) joined #osdev
00:12:54 --- quit: ALowther (Ping timeout: 248 seconds)
00:17:39 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
00:21:48 --- quit: ALowther (Ping timeout: 245 seconds)
00:22:49 --- quit: Rodya_ (Quit: Leaving...)
00:26:26 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
00:28:49 --- quit: dbe (Ping timeout: 240 seconds)
00:30:59 --- quit: zlsyx (Quit: Leaving...)
00:31:19 --- quit: ALowther (Ping timeout: 264 seconds)
00:35:13 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
00:36:58 --- quit: Goplat ()
00:39:42 --- quit: ALowther (Ping timeout: 256 seconds)
00:40:59 --- quit: regreg_ (Ping timeout: 260 seconds)
00:50:48 --- join: Asu` (~sdelang@AMarseille-658-1-70-159.w86-203.abo.wanadoo.fr) joined #osdev
00:52:51 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
00:54:30 --- quit: Asu (Ping timeout: 248 seconds)
00:57:13 --- quit: ALowther (Ping timeout: 245 seconds)
01:04:38 --- quit: oaken-source (Ping timeout: 256 seconds)
01:07:05 --- join: bemeurer (~bemeurer@104.238.143.59) joined #osdev
01:08:47 --- quit: bemeurer_ (Ping timeout: 268 seconds)
01:09:12 --- join: oaken-source (~oaken-sou@p5DDB5EE8.dip0.t-ipconnect.de) joined #osdev
01:10:20 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
01:14:49 --- quit: ALowther (Ping timeout: 240 seconds)
01:15:20 --- join: navidr (uid112413@gateway/web/irccloud.com/x-htitxncxjsdostow) joined #osdev
01:18:08 --- quit: oaken-source (Ping timeout: 256 seconds)
01:19:08 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
01:23:54 --- quit: ALowther (Ping timeout: 256 seconds)
01:24:41 --- nick: Guest57044 -> ikonia
01:28:26 --- quit: aalm (Ping timeout: 256 seconds)
01:30:18 --- join: aalm (~aalm@37-219-100-76.nat.bb.dnainternet.fi) joined #osdev
01:36:49 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
01:40:09 --- join: dbe (~dbe@h-141-38.A336.priv.bahnhof.se) joined #osdev
01:41:31 --- quit: ALowther (Ping timeout: 264 seconds)
01:45:36 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
01:50:10 --- quit: ALowther (Ping timeout: 252 seconds)
01:54:17 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
01:56:06 --- join: Sonicbit (~Sonicbit@185.53.85.3) joined #osdev
01:59:21 --- quit: ALowther (Ping timeout: 268 seconds)
02:02:55 --- join: Kimundi_ (~Kimundi@i577A9FD7.versanet.de) joined #osdev
02:03:08 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
02:03:10 --- quit: hmmmmmm (Remote host closed the connection)
02:03:36 --- join: dennis95 (~dennis@mue-88-130-61-219.dsl.tropolys.de) joined #osdev
02:04:54 --- quit: zeus1 (Ping timeout: 268 seconds)
02:07:32 --- quit: ALowther (Ping timeout: 256 seconds)
02:09:43 --- quit: Guest4630 (Remote host closed the connection)
02:12:33 --- join: conciatoama (~deco@gprs-inet-65-55.elisa.ee) joined #osdev
02:13:45 --- join: Halofreak1990_ (~FooBar247@5ED0A537.cm-7-1c.dynamic.ziggo.nl) joined #osdev
02:14:47 --- quit: Halofreak1990 (Ping timeout: 260 seconds)
02:14:47 --- nick: Halofreak1990_ -> Halofreak1990
02:15:07 <conciatoama> cause on wavefront change the there is nothing in buffers, and the exec fetch alternation delay is not deterministic, it has two choices to do, either stall on dependency for the whole dynamic wavefront, or do scoreboarding and ready issue buffering, which means asap the dep is ready it gets executed, this costs transistors, but later it is done like i previously said
02:15:35 <conciatoama> wavefront change/wavefront based scheduling
02:17:29 <conciatoama> anyhow, off now, hope glauxosdever got his answers ideally
02:17:34 --- quit: conciatoama (Quit: Leaving)
02:17:38 <aalm> ...
02:18:27 <Mutabah> mard
02:19:37 --- join: sortie (~Sortie@static-5-186-55-44.ip.fibianet.dk) joined #osdev
02:20:41 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
02:22:46 --- join: w41 (~w41@unaffiliated/w41) joined #osdev
02:23:24 --- join: zeus1 (~zeus@197.239.6.108) joined #osdev
02:25:03 --- quit: ALowther (Ping timeout: 260 seconds)
02:29:29 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
02:34:04 --- quit: ALowther (Ping timeout: 256 seconds)
02:38:29 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
02:42:24 --- join: glauxosdever (~alex@ppp-94-66-36-28.home.otenet.gr) joined #osdev
02:43:08 --- quit: ALowther (Ping timeout: 256 seconds)
02:47:08 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
02:51:24 --- quit: ALowther (Ping timeout: 252 seconds)
02:51:57 --- quit: w41 (Ping timeout: 240 seconds)
02:53:21 --- quit: Salek (Ping timeout: 260 seconds)
02:55:57 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
02:58:19 --- quit: mra90 (Ping timeout: 240 seconds)
02:59:42 <m712> i'm gonna write 1000 pages of design text before writing my operating system
03:00:43 --- quit: ALowther (Ping timeout: 264 seconds)
03:01:37 <m712> no seriously
03:04:43 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
03:08:54 --- quit: ALowther (Ping timeout: 248 seconds)
03:11:18 --- join: nortega (~nortega@gateway/tor-sasl/deathsbreed) joined #osdev
03:12:41 --- quit: NaNkeen (Ping timeout: 245 seconds)
03:14:09 --- join: NaNkeen (~nankeen@115.164.203.138) joined #osdev
03:15:08 <Sjors> m712: always the trade-off between thinking it to make it better eventually, or just making it to have it done earlier
03:15:16 <Sjors> s/it //
03:18:53 <bauen1> doug16k: currently I have different page directories for each user-process, meaning in my interrupt-trampolin code I have to reload cr3 to the kernel directory and back, how is it possible to implement that without revealing the kernel's load address ? (I currently access a pointer to the kernel directory)
03:19:08 <bauen1> i don't have KASR yet
03:20:32 --- join: nai (~naim@nai.im) joined #osdev
03:22:20 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
03:24:42 <bauen1> nvm, I just have to patch my isr routine or map the pointer somewhere
03:27:07 --- quit: ALowther (Ping timeout: 264 seconds)
03:30:23 --- quit: zeus1 (Ping timeout: 260 seconds)
03:31:10 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
03:31:11 --- join: banisterfiend (~banister@ruby/staff/banisterfiend) joined #osdev
03:31:38 --- part: nai left #osdev
03:35:19 --- quit: ALowther (Ping timeout: 240 seconds)
03:36:13 --- join: regreg_ (~regreg@85.121.54.224) joined #osdev
03:40:33 --- quit: Arcaelyx (Ping timeout: 245 seconds)
03:40:54 --- quit: NaNkeen (Ping timeout: 248 seconds)
03:43:31 --- quit: ohnx (Remote host closed the connection)
03:44:46 --- join: ohnx (notohnx@unaffiliated/ohnx) joined #osdev
03:48:47 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
03:52:28 --- join: NaNkeen (~nankeen@115.164.203.138) joined #osdev
03:53:10 --- quit: ALowther (Ping timeout: 248 seconds)
04:01:36 --- quit: immibis (Ping timeout: 260 seconds)
04:02:12 --- quit: banisterfiend (Quit: My MacBook has gone to sleep. ZZZzzz…)
04:04:24 --- join: banisterfiend (~banister@ruby/staff/banisterfiend) joined #osdev
04:06:10 --- join: daniele_athome (~daniele_a@5.170.124.167) joined #osdev
04:06:24 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
04:09:34 --- quit: nortega (Quit: Vivu lante, vivu feliĉe!)
04:11:19 --- quit: ALowther (Ping timeout: 268 seconds)
04:14:10 --- join: zeus1 (~zeus@197.239.6.108) joined #osdev
04:15:19 --- quit: daniele_athome (Read error: Connection reset by peer)
04:23:27 --- join: daniele_athome (~daniele_a@5.170.124.167) joined #osdev
04:24:07 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
04:28:55 --- quit: ALowther (Ping timeout: 264 seconds)
04:29:43 --- quit: nj0rd (Ping timeout: 245 seconds)
04:31:50 --- join: Tazmain (~Tazmain@unaffiliated/tazmain) joined #osdev
04:32:20 --- join: m_t (~m_t@p5DDA27E4.dip0.t-ipconnect.de) joined #osdev
04:32:46 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
04:33:52 --- join: hussein (~hussein@175.141.13.206) joined #osdev
04:36:48 --- quit: nur (Ping timeout: 265 seconds)
04:37:36 --- quit: ALowther (Ping timeout: 256 seconds)
04:41:34 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
04:44:54 --- join: nj0rd (~nj0rd@mue-88-130-48-081.dsl.tropolys.de) joined #osdev
04:44:55 --- quit: daniele_athome (Ping timeout: 248 seconds)
04:45:07 --- quit: banisterfiend (Quit: My MacBook has gone to sleep. ZZZzzz…)
04:45:57 --- quit: ALowther (Ping timeout: 240 seconds)
04:49:49 --- join: banisterfiend (~banister@ruby/staff/banisterfiend) joined #osdev
04:49:52 --- join: daniele_athome (~daniele_a@5.170.129.138) joined #osdev
04:50:25 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
04:53:52 --- quit: millerti (Ping timeout: 252 seconds)
04:54:46 --- quit: ALowther (Ping timeout: 245 seconds)
04:56:58 --- quit: daniele_athome (Read error: Connection reset by peer)
05:04:04 --- join: daniele_athome (~daniele_a@5.170.129.138) joined #osdev
05:08:04 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
05:12:39 --- quit: ALowther (Ping timeout: 248 seconds)
05:15:49 --- quit: daniele_athome (Ping timeout: 240 seconds)
05:16:25 --- join: tacco| (~tacco@i59F4D2C7.versanet.de) joined #osdev
05:16:45 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
05:21:00 --- quit: ALowther (Ping timeout: 252 seconds)
05:25:34 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
05:29:43 --- quit: ALowther (Ping timeout: 245 seconds)
05:34:26 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
05:38:46 --- quit: ALowther (Ping timeout: 248 seconds)
05:38:57 --- quit: Asu` (Ping timeout: 240 seconds)
05:42:30 --- join: Asu (~sdelang@44.82.136.77.rev.sfr.net) joined #osdev
05:43:23 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
05:47:58 --- quit: ALowther (Ping timeout: 256 seconds)
05:52:06 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
05:56:26 --- quit: ALowther (Ping timeout: 245 seconds)
06:00:58 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
06:05:51 --- quit: ALowther (Ping timeout: 260 seconds)
06:08:19 --- quit: quc (Remote host closed the connection)
06:09:45 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
06:13:59 --- quit: ALowther (Ping timeout: 248 seconds)
06:23:48 --- join: JusticeEX (~justiceex@pool-98-113-143-43.nycmny.fios.verizon.net) joined #osdev
06:27:21 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
06:32:06 --- quit: ALowther (Ping timeout: 276 seconds)
06:35:49 --- quit: rain1 (Quit: Leaving)
06:36:09 --- join: CrystalMath (~coderain@reactos/developer/theflash) joined #osdev
06:39:28 --- join: Arcaelyx (~Arcaelyx@2604:2000:f14a:2500:5567:a402:7532:5e4c) joined #osdev
06:40:11 --- join: Guest4630 (4d3b9548@gateway/web/cgi-irc/kiwiirc.com/ip.77.59.149.72) joined #osdev
06:42:29 --- join: spare (~user@unaffiliated/spareproject) joined #osdev
06:44:53 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
06:49:22 --- quit: ALowther (Ping timeout: 252 seconds)
06:53:45 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
06:54:15 --- join: promach__ (~promach@2001:e68:4427:94e4:d26c:21ca:18b3:9623) joined #osdev
06:54:47 --- quit: aalm (Ping timeout: 260 seconds)
06:56:20 --- quit: zeus1 (Ping timeout: 252 seconds)
06:56:40 --- join: aalm (~aalm@37-219-52-173.nat.bb.dnainternet.fi) joined #osdev
06:58:08 --- quit: ALowther (Ping timeout: 256 seconds)
06:59:53 --- quit: banisterfiend (Quit: My MacBook has gone to sleep. ZZZzzz…)
07:00:43 <Mutabah> m712: Good luck, maybe make sure to experiement with the designs as you go along
07:01:05 <Mutabah> even if they're not fully-fledged implementations, it'll help spot flaws early
07:02:32 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
07:06:12 --- join: `Guest00000 (~user@37.113.160.44) joined #osdev
07:06:47 --- quit: ALowther (Ping timeout: 248 seconds)
07:08:36 --- join: rain1 (~rain1@unaffiliated/rain1) joined #osdev
07:11:23 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
07:15:46 --- quit: ALowther (Ping timeout: 252 seconds)
07:19:25 --- quit: Kimundi_ (Quit: quit)
07:20:11 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
07:23:54 --- join: kimundi (~Kimundi@i577A9FD7.versanet.de) joined #osdev
07:24:57 --- quit: ALowther (Ping timeout: 268 seconds)
07:27:45 --- join: lachlan_s (uid265665@gateway/web/irccloud.com/x-gpikdpyyxrbmobrn) joined #osdev
07:27:51 <lachlan_s> Yay, I'm famous
07:30:47 --- join: banisterfiend (~banister@ruby/staff/banisterfiend) joined #osdev
07:37:46 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
07:37:48 --- nick: promach__ -> promach2
07:42:23 --- quit: ALowther (Ping timeout: 260 seconds)
07:43:52 --- join: ALowther (~alowther@68.200.236.134) joined #osdev
07:47:41 --- join: zeus1 (~zeus@197.239.37.248) joined #osdev
07:58:48 --- join: freakazoid0223 (~IceChat9@pool-108-52-244-197.phlapa.fios.verizon.net) joined #osdev
08:09:39 --- quit: banisterfiend (Quit: My MacBook has gone to sleep. ZZZzzz…)
08:11:14 --- quit: zeus1 (Ping timeout: 256 seconds)
08:12:18 --- join: banisterfiend (~banister@ruby/staff/banisterfiend) joined #osdev
08:17:16 <promach2> bcos_: how should I start debugging https://github.com/torvalds/linux/tree/master/drivers/char/xillybus ?
08:17:17 <bslsk05> ​github.com: linux/drivers/char/xillybus at master · torvalds/linux · GitHub
08:17:40 <promach2> it seems like I am left alone and I have no choice other than debugging the linux driver on my own
08:22:07 --- quit: Love4Boobies (Quit: Leaving)
08:24:22 --- quit: kasumi-owari (Ping timeout: 256 seconds)
08:25:04 --- join: zeus1 (~zeus@197.239.1.37) joined #osdev
08:25:18 --- quit: m_t (Quit: Leaving)
08:26:13 --- join: kasumi-owari (~kasumi-ow@ftth-213-233-237-007.solcon.nl) joined #osdev
08:26:50 --- join: drakonis (~drakonis@unaffiliated/drakonis) joined #osdev
08:29:21 --- quit: banisterfiend (Quit: My MacBook has gone to sleep. ZZZzzz…)
08:31:26 --- quit: spare (Remote host closed the connection)
08:40:56 --- quit: elevated (Quit: bye)
08:48:59 --- join: andrei-n (~andrei@184.206-65-87.adsl-dyn.isp.belgacom.be) joined #osdev
08:49:28 --- quit: drakonis (Remote host closed the connection)
08:53:27 --- quit: wgrant (Ping timeout: 248 seconds)
08:57:24 --- join: wgrant (~wgrant@ubuntu/member/wgrant) joined #osdev
09:02:19 --- join: variable (~variable@freebsd/developer/variable) joined #osdev
09:09:07 --- quit: Guest4630 (Ping timeout: 264 seconds)
09:14:43 --- quit: nj0rd (Ping timeout: 268 seconds)
09:22:27 --- quit: JusticeEX (Ping timeout: 265 seconds)
09:23:11 --- join: Guest4630 (4d3b9548@gateway/web/cgi-irc/kiwiirc.com/ip.77.59.149.72) joined #osdev
09:26:05 --- quit: return0e (Remote host closed the connection)
09:26:55 --- nick: hussein -> nur
09:29:42 --- join: nj0rd (~nj0rd@i577BC08F.versanet.de) joined #osdev
09:38:53 <bauen1> anyone else got a working uhci driver I may look at ?
09:39:19 <bauen1> preferably tested on real hardware, because my uhci driver works in virtual machines but not on my macbook
09:41:20 --- quit: port443 (Read error: Connection reset by peer)
09:41:24 <stephennnn> There is no reason why a i386 OS I'm writing wouldn't work on x86_64 hardware, right?
09:41:37 <stephennnn> Since x86_64 implements the i386 instruction set
09:41:46 <stephennnn> But yet my OS works in qemu, but when I burn it to a CD, the CD doesn't boot
09:44:32 <bauen1> does your x86_64 machine use uefi ?
09:44:41 <bauen1> what bootloader are you using ?
09:47:44 --- join: port443 (~wizardmin@mtndewcode.red) joined #osdev
09:47:56 --- join: drakonis (~drakonis@unaffiliated/drakonis) joined #osdev
09:54:46 --- join: return0e (~return0e@5-198-102-244.static.kc.net.uk) joined #osdev
09:59:06 --- join: hmmmm (~sdfgsf@pool-72-79-166-72.sctnpa.east.verizon.net) joined #osdev
09:59:09 --- quit: janemba (Read error: Connection reset by peer)
09:59:59 --- join: janemba (~janemba@unaffiliated/janemba) joined #osdev
10:00:10 --- quit: variable (Quit: Found 1 in /dev/zero)
10:02:43 <stephennnn> bauen1 No
10:02:47 <stephennnn> And my own bootloader
10:02:47 --- quit: janemba (Read error: Connection reset by peer)
10:04:33 --- join: janemba (~janemba@unaffiliated/janemba) joined #osdev
10:04:35 --- quit: promach (Quit: SuchZNC - Such ZNC, many free, w0w... -- https://suchznc.net)
10:07:35 --- quit: Asu (Remote host closed the connection)
10:07:57 --- join: Asu (~sdelang@44.82.136.77.rev.sfr.net) joined #osdev
10:09:21 --- quit: janemba (Read error: Connection reset by peer)
10:10:47 --- join: janemba (~janemba@unaffiliated/janemba) joined #osdev
10:12:35 --- quit: tsurai (Quit: ZNC 1.6.6 - http://znc.in)
10:12:56 <bauen1> if it doesn't boot at all, the machine is at fault, if it does boot but nothing works/happens your bootloader/kernel is the problem
10:13:03 --- join: tsurai (~tsurai@2001:19f0:6c01:5d0:5400:1ff:fe49:f728) joined #osdev
10:14:13 <stephennnn> Sorry I should clarify
10:14:19 <stephennnn> It boots but immediately restarts
10:14:45 <bauen1> so it tripple faults
10:15:03 <stephennnn> Probably
10:15:21 <stephennnn> I took the exact same CD, stuck it in my desktop, pointed virtualbox at it, and it boots
10:15:22 --- quit: janemba (Read error: Connection reset by peer)
10:15:39 <bauen1> if you want to continue testing, I recommend using grubs loopback feature so you don't have to burn multiple cd's
10:15:55 <stephennnn> I have CD/RW CDs
10:16:01 --- join: janemba (~janemba@unaffiliated/janemba) joined #osdev
10:16:13 <bauen1> and the rest is basically adding halt-loops in the bootloader / kernel and see if it doesn't crash to narrow down the point where it crashes
10:16:32 --- quit: NaNkeen (Ping timeout: 252 seconds)
10:16:38 <bauen1> does your bootloader handle failure to load from disk gracefully ?
10:16:58 --- join: NaNkeen (~nankeen@115.164.203.138) joined #osdev
10:17:47 <stephennnn> Depends what you mean
10:17:51 <stephennnn> It handles disk faults
10:18:29 <bauen1> are you using the extended bios interface to load from disk ?
10:18:49 <bauen1> or is there any sign of the kernel actually executing ?
10:19:51 <stephennnn> I'm not sure what you mean
10:20:23 <_mjg_> https://github.com/ezrec/AROS-mirror/blob/ABI_V1/AROS/arch/all-pc/kernel/spinunlock.c seriously, why
10:20:25 <bslsk05> ​github.com: AROS-mirror/spinunlock.c at ABI_V1 · ezrec/AROS-mirror · GitHub
10:21:29 <bauen1> do you convert LBA's into CHS or do you just use the LBA when calling the bios ?
10:21:30 --- quit: janemba (Read error: Connection reset by peer)
10:22:09 <stephennnn> I use CHS
10:22:38 --- join: janemba (~janemba@unaffiliated/janemba) joined #osdev
10:22:40 --- quit: janemba (Read error: Connection reset by peer)
10:22:48 <bauen1> so its mo
10:23:00 --- join: janemba (~janemba@unaffiliated/janemba) joined #osdev
10:23:07 <stephennnn> Yeah
10:23:15 <bauen1> can you add a halt-loop directly after the kernels entry point ?
10:23:16 <stephennnn> I just load the first 50 sectors off the CD into memory
10:23:37 <bauen1> if it reboots, your kernel doesn't get loaded, if it halts, your kernel does get loaded
10:23:52 <stephennnn> Okay, sure
10:24:37 <bauen1> and, do you disable interrupts in your bootloader / kernel ?
10:25:21 <bauen1> another question, is the source code on github / the internet ?
10:28:56 <stephennnn> bauen1: Yes, I disable interrupts before I switch to protected mode
10:29:08 <stephennnn> And the source code isn't on the internet for now
10:30:20 --- join: Asu` (~sdelang@AMarseille-658-1-70-159.w86-203.abo.wanadoo.fr) joined #osdev
10:31:18 --- quit: Asu (Ping timeout: 276 seconds)
10:31:26 <stephennnn> So even without the kernel loop, the OS still hangs
10:31:33 <stephennnn> So I think it's getting stuck somewhere
10:31:45 <stephennnn> I have printing in the second stage of the bootloader, so it's not even getting that far
10:32:12 <stephennnn> The first stage just loads the OS, and jumps to the memory address it was loaded to
10:32:21 --- quit: drakonis (Read error: Connection reset by peer)
10:33:05 --- join: drakonis (~drakonis@unaffiliated/drakonis) joined #osdev
10:36:24 --- quit: Sonicbit (Quit: My iMac has gone to sleep. ZZZzzz…)
10:41:47 --- join: elevated (~elevated@unaffiliated/elevated) joined #osdev
10:42:54 --- join: banisterfiend (~banister@ruby/staff/banisterfiend) joined #osdev
10:47:37 --- join: bender (uid106562@gateway/web/irccloud.com/x-icrzsajjvesdblhm) joined #osdev
10:48:23 --- quit: navidr (Quit: Connection closed for inactivity)
10:52:55 --- quit: NaNkeen (Ping timeout: 248 seconds)
11:11:53 --- quit: promach2 (Quit: WeeChat 2.1)
11:13:26 --- join: Goplat (~goplat@reactos/developer/Goplat) joined #osdev
11:20:07 --- join: quc (~quc@host-89-230-169-99.dynamic.mm.pl) joined #osdev
11:22:41 --- quit: X-Scale (Ping timeout: 245 seconds)
11:24:09 --- join: [X-Scale] (~ARM@83.223.226.47) joined #osdev
11:24:39 --- join: oaken-source (~oaken-sou@p5DDB5EE8.dip0.t-ipconnect.de) joined #osdev
11:33:10 --- quit: stephennnn (Ping timeout: 252 seconds)
11:39:01 --- join: m_t (~m_t@p5DDA27E4.dip0.t-ipconnect.de) joined #osdev
11:44:46 --- quit: oaken-source (Ping timeout: 260 seconds)
11:54:17 --- join: stephen_ (~stephen@142.134.91.153) joined #osdev
11:54:18 --- nick: stephen_ -> stephennnn
11:56:46 --- join: light2yellow (~l2y@217.30.64.102) joined #osdev
11:56:53 --- quit: banisterfiend (Quit: My MacBook has gone to sleep. ZZZzzz…)
12:03:15 <doug16k> stephennnn, don't use CHS!!!
12:04:12 <doug16k> use LBA, with int 0x13, ah=0x42
12:04:46 --- quit: Asu` (Ping timeout: 245 seconds)
12:05:00 --- join: Asu (~sdelang@30.204.154.77.rev.sfr.net) joined #osdev
12:07:19 --- quit: mischief (Ping timeout: 264 seconds)
12:08:39 <doug16k> do you really expect cylinders/head/sectors to work on a CD? it has no cylinders or heads. the data is a continuous spiral, like a vinyl audio record.
12:09:05 <doug16k> and even if the BIOS is translating it, it is far more cumbersome than LBA
12:09:22 --- join: Asu` (~sdelang@AMarseille-658-1-70-159.w86-203.abo.wanadoo.fr) joined #osdev
12:09:51 <geist> doug16k: that being said, when cdroms first came out i think that was still pre LBA. i wonder what the access method was back then?
12:11:01 --- quit: Asu (Ping timeout: 260 seconds)
12:11:26 --- join: banisterfiend (~banister@ruby/staff/banisterfiend) joined #osdev
12:11:31 --- join: Drakonnus (~Drakonnus@2804:14d:7480:1101:112f:bc36:1fbb:f2e9) joined #osdev
12:11:39 --- part: Drakonnus left #osdev
12:12:19 <doug16k> sure, it will probably work, but it will be far more cumbersome and error prone to calculate, when you could just give a single number that precisely represents someplace on the disc
12:12:59 <geist> well i dunno, did CHS ever work with cdroms? what was the emulated geometry?
12:13:08 --- join: mischief (~mischief@2001:19f0:ac01:7b:bc56:8c25:9adb:6f6) joined #osdev
12:13:42 <doug16k> I think it depends on how the boot sector is set up. in no-emulation it probably requires LBA, but it would accept CHS with emulation
12:14:22 * geist nods
12:16:12 <geist> http://bochs.sourceforge.net/doc/docbook/user/bios-tips.html doesn't really address the cdrom thing, but it has a fairly nice little table summarizing some of the access modes
12:16:12 <bslsk05> ​bochs.sourceforge.net: BIOS Tips
12:16:36 <geist> it doesn't talk about the 2TB limit, which is i think when LBA32 ran out and had to switch to LBA48, i think?
12:18:13 <doug16k> it would be the 8TB limit with 2KB sectors
12:19:07 <geist> yah
12:19:35 <geist> i think the 2TB problem wasn't a big deal and they got off their ass and fixed it before it was an issue
12:19:47 <doug16k> 2TB limit is there on hard drives because they emulate 512 byte sectors and merge partial writes into physical sectors
12:19:55 <geist> that was mostly really old OSes using large disks that they didn't knowto use the LBA48 ATA command set
12:19:59 <doug16k> yeah, so much code just assuming 512 hardcoded D:
12:20:18 <geist> sure but doesn't LBA48 make it moot for quite a bit longer?
12:20:33 <doug16k> yes
12:21:25 <doug16k> int 0x13, ah=0x42 takes a 64 bit LBA, making it possible for the BIOS to accept LBA48 for a long time
12:21:42 <doug16k> a/accept/implement/
12:22:08 <geist> i've had to deal with it recently because the ol 386 has a circa 1988 bios and only supports the basic untranslated addresses
12:22:14 <geist> 1024/16/63, 528MB
12:22:21 <doug16k> yuck
12:22:40 <geist> so sure enough gotta boot within the first 528, but then i created a second 7.5GB partition once it's into linux
12:23:11 <geist> which seems to understand up to the 8GB limit. presumably because linux 1.2.13 isn't new enough to know about additional ATA modes
12:23:18 <geist> since it's a much more modern drive (20GB)
12:23:21 <doug16k> int 0x13, ah=0x42 is unimplemented?
12:23:28 <geist> oh i'm sure it is. 1988
12:23:35 --- quit: banisterfiend (Quit: My MacBook has gone to sleep. ZZZzzz…)
12:23:45 <geist> this was in the era when you needed to go into the bios an enter the numbers, doesn't even know about detecting the drive
12:23:50 <geist> which came in one of the later ATA spec
12:24:12 <doug16k> I thought that was more 80286 era.
12:24:18 <doug16k> but I'll take your word for it :)
12:24:26 <geist> and the field that lets you enter the numbers only takes up to 1024/16/63
12:24:39 <geist> well, it kind of is. 1988, tail end of the 286/386 era
12:24:48 <geist> 386 didn't hard replace 286 for a long time
12:25:02 <geist> wasn't apparently until the 386sx and things getting cheap that it became the defacto replacement
12:25:17 <geist> thoguh performance wise it wasn't much faster
12:25:46 <geist> a 40 or 100 MB drive would have been standard around then
12:26:06 <doug16k> I had one of those fancy autoconfiguring MFM hard drive interfaces with fancy ROMs on my 80286. I've never had to put in CHS
12:26:13 <geist> i distinctly remember my 386 in 1990 had a 40MB drive, and the p90 I got in 94/95 had a 540MB
12:27:20 <geist> i haven't tried does with the 20GB drive, but i suspect it would only see the first 528MB, since i think it just takes whatever the bios tells it and doesnt ask any questions
12:27:22 <doug16k> I did have a crap PC/XT too... I guess I had to put it in there
12:28:06 <geist> and anyway FAT16 was limited to 500MB anyway, so would have to make a bunch of sectors
12:28:09 <geist> er partitions
12:28:35 <doug16k> DOS 6.22 can make up to 2GB partitions, with huge clusters though
12:28:52 <doug16k> I just set up a windows 3.1 vm last week :)
12:29:26 <doug16k> you're right if you keep the cluster size reasonable
12:30:02 --- join: Sonicbit (~Sonicbit@185.53.85.11) joined #osdev
12:30:27 <geist> not so sure about that. from what i remember 512MB was when FAT16 hits 32K clusters, and anything beyond that (up to 1GB) was 64k clusters
12:30:49 <geist> which dos/windows never supported, but NT did. there was this brief period wher eyou could format a FAT partition that windows didn't understand
12:31:09 <geist> then win95 came out, added FAT32, but until NT4 NT couldn't mount FAT32
12:31:22 <geist> so there was this brief window there where you could make a NT only FAT partition
12:31:45 <geist> but sort of mattered if you had a 500-1TB drive, wanted to put NT on it, and didn't want to use NTFS
12:32:15 <doug16k> http://pasteall.org/pic/show.php?id=575a28c503960c4b7cc063db27e657c7
12:32:31 <geist> but yeah i must have just had everything shifted over
12:32:36 <stephennnn> doug16k: fair enough
12:32:41 <geist> since 32k * 64k == 2GB
12:33:44 <geist> but i distinctly remember NT being able to use 64k clusters, which as not okay for dos based windows
12:33:47 <stephennnn> So how do I use LBA? The only thing I can find is converting it to CHS
12:34:25 <geist> https://support.microsoft.com/en-us/help/140365/default-cluster-size-for-ntfs-fat-and-exfat apparently has the master table
12:34:25 <bslsk05> ​support.microsoft.com <no title>
12:34:35 <doug16k> geist, in practice having clusters that big is very wasteful, realistically you'd use more partitions. I was only speaking of absolute maximum
12:34:53 <geist> though it claims FAT32 support for NT 3.51 which doesn't seem right
12:35:02 <geist> NT4 probably got it in a later service pack
12:35:30 <geist> doug16k: yeah
12:35:47 <geist> and unless you're trying to dual boot, you should use NTFS for NT only installs
12:36:03 <geist> there was a brief period there when on low end machines NTFS was noticibly slower
12:36:10 <geist> but pretty quickly that became a non issue
12:36:22 <doug16k> stephennnn, you wrote the bootloader code right? what is in AH when you invoke int 0x13?
12:36:49 <doug16k> to read
12:36:49 <stephennnn> 0x02
12:37:41 <doug16k> ok, use AH=0x42 instead -> https://github.com/doug65536/dgos/blob/master/boot/bootsect.cc#L24
12:37:43 <bslsk05> ​github.com: dgos/bootsect.cc at master · doug65536/dgos · GitHub
12:38:30 <stephennnn> hm
12:38:33 <geist> heh someone needs to write a web page that lets you directly enter bios commands and see what returns
12:38:44 <geist> like the godbolt of bioses
12:39:02 <doug16k> stephennnn, here's a bit of my MBR code in assembly: https://github.com/doug65536/dgos/blob/master/mbr/mbr.s#L128
12:39:03 <bslsk05> ​github.com: dgos/mbr.s at master · doug65536/dgos · GitHub
12:39:09 <doug16k> geist, yeah that would be cool :)
12:39:59 <doug16k> in my project I chainload the bootsector from the MBR. the MBR is a typical load-the-active-partition implementation that does little else
12:40:32 <doug16k> I also have CD boot code that is separate...
12:40:57 <doug16k> I use no-emulation el-torito and have filesystem reader for ISO9660/joliet in my bootsector
12:41:10 <geist> yeah i got the impression that boot from floppy/hard drive/cdrom are different enough that it's hard to do it with the same bootsector
12:41:24 <geist> but i never looked into precisely why
12:42:57 <doug16k> yeah it requires a different boot sector, only one file is different though - the one linked at the beginning of the code
12:43:16 <doug16k> cd mastering programs inject stuff into the first sector -> https://github.com/doug65536/dgos/blob/master/boot/bootiso.s#L10
12:43:17 <bslsk05> ​github.com: dgos/bootiso.s at master · doug65536/dgos · GitHub
12:43:34 <geist> also discovered via the 386 stuff the joys of putting your linux boot disk on a floppy and fiddlign with the default parameters via the rdev command
12:43:56 <geist> it's actually quite nice, you can not worry about having a bootable hard drive as long as you keep a boot floppy around
12:44:06 <doug16k> those bootinfo things are patched in by the mastering program
12:44:37 <geist> yep. rdev
12:44:53 <geist> there's some structure at the start of the linux kernel that you patch crap into
12:45:02 <geist> like sector 1 or something
12:45:36 <doug16k> I see. the ones I am referring to are el-torito standard things
12:46:00 <geist> ah. yeah okay that too
12:47:34 <doug16k> FAT32 filesystems also require a gap after the first sector for the "filesystem info sector". you need to leave offset 0x400-0x600 unused in your bootloader code
12:48:05 <doug16k> geist, have you tried making a PE compiler with your build script?
12:48:37 <geist> what build script is this?
12:48:44 <doug16k> toolchains
12:48:50 <geist> ah no
12:49:03 <geist> we do it for the fuchsia toolchain though, dunno precisely how
12:49:13 <doug16k> UEFI?
12:49:20 <geist> though in practice it's actually fairly easy to build a flat binary and just manually construct a PE header
12:49:24 <geist> yes. for UEFI
12:49:29 --- join: MarcinWieczorek (~MarcinWie@37.109.33.225) joined #osdev
12:49:56 <doug16k> but what about calling convention?
12:50:08 <geist> of what? can you be more clear what you're getting at?
12:50:20 <doug16k> doesn't UEFI use windows ABI?
12:50:30 <geist> beats me. probably?
12:50:51 <doug16k> that's why I thought you should build a real PE compiler
12:50:51 <geist> what are you getting at?
12:51:03 <geist> oh for calls back into UEFI?
12:51:06 <doug16k> ya
12:51:16 <geist> that's a good question, guess that's why we use the PE toolchain for that
12:51:24 <geist> except we dont for ARM64, for some reason
12:51:34 <geist> but.... i think the calling convention for PE-ARM64 is the same.
12:52:04 <geist> thus you can compile with an ELF toolchain, manually construct a PE header via a .S file, and just flatten the binary and UEFI will load it
12:52:15 <geist> it's what linux arm64 does. the kenrle actually appears to be a PE binary
12:52:37 <stephennnn> Ah so I have to set up LBA by sending AH=0x41 int 13, right?
12:52:48 <geist> but you're right, that would have caused problems when calling back into UEFI if the calling convention didn't match
12:53:05 <geist> without some sort of ABI vaneer routine at least that moved things around
12:53:31 <doug16k> stephennnn, see that C code I linked? it shows the structure, which you populate with values, then pass a pointer to it when you invoke int 0x13, ah=0x42.
12:53:50 <doug16k> geist, I wonder if it would be good enough to use mingw
12:54:04 <geist> if it can produce an x86 pe file then idont see why not
12:54:28 <stephennnn> Yeah, it's confusing me a bit
12:54:29 --- join: godel (~gonzalo@190.192.95.122) joined #osdev
12:55:11 <doug16k> stephennnn, http://www.ctyme.com/intr/rb-0708.htm
12:55:12 <bslsk05> ​www.ctyme.com: Int 13/AH=42h
12:56:11 <stephennnn> Thanks
12:57:07 <stephennnn> Stupid question, what does ES:BX mean? Like I know I set it by putting a mem address in BX, but what's different between that and just saying BX
13:04:00 <doug16k> it means a "far pointer". in real mode, the address will be (ES << 4) + BX
13:04:40 <doug16k> your code is probably all in the first 64KB right? then just make sure ES is zero, and put the offset in BX
13:05:22 <doug16k> hopefully you initialized ES somewhere else, and it is already zero
13:06:46 <stephennnn> Thank you
13:07:06 <doug16k> real mode is 16 bit code. a 16 bit offset can only represent up to 64KB. to extend it, x86 has "segment registers" which add another 4 bits to the address range. addresses are formed from (segment << 4) + offset
13:07:28 <doug16k> ^ in real mode!
13:08:42 <stephennnn> That makes sense
13:11:03 --- join: JusticeEX (~justiceex@pool-98-113-143-43.nycmny.fios.verizon.net) joined #osdev
13:12:29 --- join: Shamar (~giacomote@unaffiliated/giacomotesio) joined #osdev
13:13:38 --- quit: bemeurer (Ping timeout: 252 seconds)
13:24:02 <bauen1> geist: doug16k it is possible to have a hard-drive and cd-rom hybrid image
13:24:24 <bauen1> i did infact implement it for klange's bootloader locally
13:25:32 <bauen1> you just load blocks normally, and mkisofs / xorriso will patch a few bytes to tell you where the iso's boot code is, so either the bootloader loads the iso code or the iso code is directly loaded
13:26:21 <bauen1> Now I just need to add a real ATA driver toaru-nih-boot and partition parsing and I'll have a viable alternative to grub
13:30:56 --- quit: MarcinWieczorek (Ping timeout: 256 seconds)
13:31:19 --- quit: m_t (Quit: Leaving)
13:31:21 <stephennnn> Here's my bootloader code, it's not working - Error 0x01, so command error
13:31:34 --- quit: chaignc (Remote host closed the connection)
13:31:53 <stephennnn> Well the snippet of it that loads the disk
13:31:58 <stephennnn> As well as the supporting code
13:34:08 --- join: xerpi (~xerpi@103.red-83-45-197.dynamicip.rima-tde.net) joined #osdev
13:34:55 --- quit: xerpi (Remote host closed the connection)
13:35:19 --- join: xerpi (~xerpi@103.red-83-45-197.dynamicip.rima-tde.net) joined #osdev
13:35:28 <doug16k> bauen1, yes, I got hybrid working, but it caused it to link in both FAT32 and ISO9660 filesystem code. I split it into separate builds that share almost all of the code
13:36:24 <bauen1> but doesn't that make hybrid kinda pointless for your case ?
13:37:19 <bauen1> or much rather you have duplicate code on the disk
13:37:33 --- join: chaignc (~yes@2001:41d0:8:fbb::1) joined #osdev
13:37:44 <bauen1> it will still work and be a hybrid image if done right (note that the mbr has a rather limited size for iso's)
13:38:11 <doug16k> you only need cd boot code when mastering cd. you only need hard drive boot code when installing to hard disk
13:38:40 <doug16k> what's the point of making it handle both at once?
13:38:49 <doug16k> stephennnn, you forgot to post the link
13:39:00 <stephennnn> Lol whoops
13:39:05 <stephennnn> https://paste.scd31.com/view/78ad0746
13:39:06 <bslsk05> ​paste.scd31.com: Untitled - SCD Paste
13:40:14 <doug16k> stephennnn, I'd mov es,cx before line 12, to be sure
13:40:40 <doug16k> execution goes into nonsense after line 15 returns
13:40:55 --- join: S_Gautam (~bc2010asd@59.182.251.201) joined #osdev
13:41:14 <doug16k> bits 16 should go at the top, it's all bits 16
13:41:14 --- quit: S_Gautam (Client Quit)
13:41:22 <stephennnn> Yeah there's more code there, pretend there's a jmp $
13:41:32 <stephennnn> Also I added the mov es,cx and it didn't help
13:41:36 --- join: S_Gautam (~GautamS@unaffiliated/gautams) joined #osdev
13:41:54 <stephennnn> I thought so with the bits 16, just moved it
13:43:11 --- join: MarcinWieczorek (~MarcinWie@37.109.33.225) joined #osdev
13:47:36 --- join: variable (~variable@freebsd/developer/variable) joined #osdev
13:49:27 <drakonis> https://i.imgur.com/HCfUA.jpg
13:50:20 <stephennnn> Can qemu dump registers?
13:51:33 <clever> stephennnn: https://en.wikibooks.org/wiki/QEMU/Monitor#info
13:51:33 <bslsk05> ​en.wikibooks.org: QEMU/Monitor - Wikibooks, open books for an open world
13:52:50 <variable> hihi
13:57:38 --- quit: Guest4630 (Ping timeout: 252 seconds)
13:59:16 <doug16k> stephennnn, yes, info registers
13:59:37 <doug16k> you can dump memory too, with the x command. its syntax is like gdb's x command
14:00:09 <doug16k> you can use register values in expressions using $-prefixed names, like $esp
14:00:40 <stephennnn> I have no idea why this won't load from the disk
14:01:03 <doug16k> are you debugging it with gdb?
14:01:28 <stephennnn> No, with print statements
14:03:51 <doug16k> how far does it get?
14:03:59 <doug16k> does it execute any of your code at all?
14:04:09 <stephennnn> Yeah, it executes it all
14:04:15 <stephennnn> But the carry bit is set, indicating an error
14:04:31 <stephennnn> ah, the error code, is 0x001, which means the command didn't make sense
14:04:39 <stephennnn> And my second stage isn't loaded into memory
14:05:50 <doug16k> you are loading LBA 0x10000. is that your intent?
14:06:40 <stephennnn> I thought I was loading it to 0x1000
14:07:04 <doug16k> memory address is not the same thing as LBA
14:07:12 --- quit: bender (Quit: Connection closed for inactivity)
14:07:15 --- join: spare (~user@unaffiliated/spareproject) joined #osdev
14:08:00 <doug16k> line 24 thru 26 of your paste becomes a 64 bit LBA value -> 0x0000000000010000
14:08:31 <stephennnn> https://wiki.osdev.org/ATA_in_x86_RealMode_(BIOS)
14:08:33 <bslsk05> ​wiki.osdev.org: ATA in x86 RealMode (BIOS) - OSDev Wiki
14:08:33 <doug16k> which means that you are loading LBA 65536
14:08:36 <stephennnn> This is what I'm working off of
14:09:07 <doug16k> are you supposed to be loading LBA 1 ?
14:09:20 <stephennnn> I believe so
14:09:28 <stephennnn> I'm trying to load after the first sector
14:09:40 <doug16k> then line 24/25 of your paste are reversed
14:09:50 <doug16k> should be dw 1 ... dw 0 ... dd 0
14:10:04 <doug16k> or just dq 1
14:10:25 <stephennnn> Okay
14:10:33 <stephennnn> I've swapped them, still getting the same error
14:10:54 --- join: trout (~variable@freebsd/developer/variable) joined #osdev
14:11:13 <doug16k> when you were using CHS, you were loading starting at sector 2?
14:11:17 <stephennnn> Yes
14:11:39 <doug16k> ok. sectors start at 1, LBA starts at 0, so it should now be equivalent
14:12:17 <doug16k> can you show updated paste without removing everything?
14:13:19 <stephennnn> https://paste.scd31.com/view/f6d67549
14:13:20 <bslsk05> ​paste.scd31.com: Untitled - SCD Paste
14:13:23 <stephennnn> There are 2 files
14:13:53 --- quit: variable (Ping timeout: 245 seconds)
14:14:07 <doug16k> stephennnn, why pop dx on line 54?
14:14:28 <stephennnn> I had push dx above before, forgot to remove it
14:14:48 <stephennnn> No change
14:15:18 <doug16k> it would be catastrophic to pop dx there
14:15:29 <doug16k> it would ret to nonsense address
14:15:29 --- quit: sprocklem (Quit: [])
14:17:05 <stephennnn> Yeah, I only just removed the push dx so my debugging efforts aren't lost
14:20:14 <doug16k> bios calls preserve registers, it's paranoid to pusha/popa. that bios call only clobbers ah, but it should work anyway
14:21:01 <stephennnn> Yeah but if in the future I use ah for some reason
14:24:46 --- quit: andrei-n (Ping timeout: 245 seconds)
14:26:52 <doug16k> stephennnn, are you using linux?
14:27:41 <stephennnn> doug16k: Yes
14:29:12 --- quit: Asu` (Ping timeout: 276 seconds)
14:29:48 <doug16k> ah... the address is 32 bit
14:30:44 <doug16k> my bad. line 38 should be dw 0. line 39 should be dq 1, get rid of the dd's from 39/40
14:31:34 --- join: immibis (~chatzilla@222-155-160-32-fibre.bb.spark.co.nz) joined #osdev
14:31:52 <stephennnn> Still the same error
14:32:00 <stephennnn> Why does the host system matter, if I'm running it in an emulator?
14:32:34 <doug16k> I was going to suggest hex-dumping the disk image with hexdump -C diskimagefilename | less
14:33:01 <doug16k> but I didn't because you are apparently sure it is setting carry in that bios call
14:33:32 <doug16k> what is the size of the disk image file?
14:33:39 <stephennnn> ls
14:34:03 <stephennnn> Whoops
14:34:14 <stephennnn> The image of just the first stage of the bootloader?
14:34:29 <stephennnn> 512 bytes exactly
14:34:44 <stephennnn> Then the second stage is 2048 bytes
14:34:59 <stephennnn> That plus the kernel is 14.4kB
14:35:01 <doug16k> you are making a hard disk image and booting that in qemu?
14:35:16 <stephennnn> No, I've made a floppy image and a cd image
14:35:32 <stephennnn> Oh, the CD image works
14:35:36 <stephennnn> "works"
14:35:37 <doug16k> ok, so you are feeding a floppy disk image to your mastering tool and it produces a cd?
14:35:42 <stephennnn> It doesn't boot still
14:35:45 <doug16k> cd image*
14:35:46 <stephennnn> But there's no error
14:35:54 <stephennnn> Yeah
14:36:03 <doug16k> what is the size of the floppy image?
14:36:18 <stephennnn> Actually the CD image still doesn't work
14:36:24 <stephennnn> I just hadn't updated it
14:36:32 <stephennnn> The floppy image is 14.4kB
14:36:47 <stephennnn> Wait, it's 1.5MB
14:36:55 <stephennnn> Sorry about that
14:38:51 --- nick: chaignc -> chaign
14:38:54 <stephennnn> Aha
14:38:57 <stephennnn> It boots
14:38:59 --- nick: chaign -> chaignc
14:39:04 <stephennnn> Brb, will figure out what I did later
14:41:26 --- quit: regreg_ (Ping timeout: 240 seconds)
14:44:58 <geist> 18k * 80 is what i usually use to make one
14:45:09 <geist> it is precisely the right match for a 1.44MB disk
14:47:42 <geist> handy if you're using dd
14:47:51 <geist> bs=18k count=80
14:49:21 <stephennnn> Okay so the floppy file works, when I don't specify -fda in qemu
14:49:46 <stephennnn> However, -cdrom isofile.iso gives the same error as before
14:49:49 <stephennnn> Same in virtualbox
14:53:41 --- join: sprocklem (~sprocklem@unaffiliated/sprocklem) joined #osdev
14:53:57 --- quit: glauxosdever (Quit: leaving)
14:57:01 --- quit: dennis95 (Quit: Leaving)
14:57:04 --- quit: xenos1984 (Quit: Leaving.)
14:58:21 --- join: vdamewood (~vdamewood@unaffiliated/vdamewood) joined #osdev
15:04:11 --- quit: vdamewood (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
15:04:19 --- quit: immibis (Ping timeout: 240 seconds)
15:05:16 --- join: vdamewood (~vdamewood@unaffiliated/vdamewood) joined #osdev
15:06:06 --- quit: vdamewood (Client Quit)
15:08:02 --- join: vdamewood (~vdamewood@unaffiliated/vdamewood) joined #osdev
15:11:02 --- nick: [X-Scale] -> X-Scale
15:11:32 --- quit: kimundi (Remote host closed the connection)
15:11:42 --- join: kimundi (~Kimundi@i577A9FD7.versanet.de) joined #osdev
15:12:48 --- quit: transistor (Ping timeout: 252 seconds)
15:18:51 --- quit: awang_ (Ping timeout: 260 seconds)
15:19:13 --- join: transistor (~trans@S01060018f8f95df7.vc.shawcable.net) joined #osdev
15:28:28 --- quit: Tazmain (Quit: Left)
15:29:24 --- quit: xerpi (Quit: Leaving)
15:29:41 --- join: bemeurer (~bemeurer@173.199.80.131) joined #osdev
15:33:56 --- quit: bemeurer (Ping timeout: 240 seconds)
15:38:47 --- quit: transistor (Ping timeout: 248 seconds)
15:38:53 --- join: bemeurer (~bemeurer@stdcognition.static.monkeybrains.net) joined #osdev
15:41:16 --- quit: elevated (Quit: bye)
15:42:39 --- quit: light2yellow (Quit: light2yellow)
15:51:22 --- join: transistor (~trans@S01060018f8f95df7.vc.shawcable.net) joined #osdev
15:51:41 --- quit: sortie (Quit: Leaving)
15:52:20 --- quit: lachlan_s (Quit: Connection closed for inactivity)
15:56:54 --- quit: Tobba (Quit: Leaving)
15:57:12 --- join: Tobba (~Tobba@h-25-157.A159.priv.bahnhof.se) joined #osdev
16:07:37 --- quit: vdamewood (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
16:16:58 --- quit: transistor (Ping timeout: 252 seconds)
16:18:14 --- join: isd (~isd@pool-71-174-32-198.bstnma.east.verizon.net) joined #osdev
16:19:00 --- quit: S_Gautam (Quit: Leaving)
16:21:16 --- quit: bemeurer (Ping timeout: 260 seconds)
16:21:57 --- join: bemeurer (~bemeurer@stdcognition.static.monkeybrains.net) joined #osdev
16:23:56 --- quit: Shamar (Ping timeout: 252 seconds)
16:48:13 --- join: Kimundi_ (~Kimundi@i577A9CE3.versanet.de) joined #osdev
16:51:48 --- quit: kimundi (Ping timeout: 245 seconds)
17:00:24 --- join: banisterfiend (~banister@ruby/staff/banisterfiend) joined #osdev
17:00:27 --- quit: atk (Quit: Well this is unexpected.)
17:00:40 --- join: atk (~Arch-TK@ircpuzzles/staff/Arch-TK) joined #osdev
17:03:07 --- quit: Goplat ()
17:06:04 --- quit: newsham (Read error: Connection reset by peer)
17:06:21 --- join: newsham (~chat@udp217044uds.hawaiiantel.net) joined #osdev
17:06:28 --- quit: quc (Ping timeout: 252 seconds)
17:07:18 --- quit: drakonis (Quit: Leaving)
17:07:34 --- join: Drakonnus (~Drakonnus@2804:14d:7480:1101:112f:bc36:1fbb:f2e9) joined #osdev
17:08:07 --- quit: bemeurer (Quit: WeeChat 2.1)
17:10:55 --- quit: newsham (Ping timeout: 264 seconds)
17:11:24 --- join: newsham (~chat@udp217044uds.hawaiiantel.net) joined #osdev
17:14:42 --- quit: MarcinWieczorek (Quit: WeeChat 2.1)
17:20:28 --- quit: Drakonnus (Quit: Leaving)
17:20:58 --- join: drakonis (~drakonis@unaffiliated/drakonis) joined #osdev
17:25:03 --- join: quc (~quc@host-89-230-165-194.dynamic.mm.pl) joined #osdev
17:31:19 --- quit: newsham (Ping timeout: 264 seconds)
17:33:59 --- quit: `Guest00000 (Ping timeout: 248 seconds)
17:38:29 --- join: transistor (~trans@S01060018f8f95df7.vc.shawcable.net) joined #osdev
17:45:47 --- join: return0e_ (~return0e@5-198-102-244.static.kc.net.uk) joined #osdev
17:46:27 --- quit: smeso (Ping timeout: 245 seconds)
17:48:11 --- quit: return0e (Ping timeout: 260 seconds)
17:50:47 --- join: smeso (~smeso@unaffiliated/smeso) joined #osdev
17:53:15 --- quit: Arcaelyx (Ping timeout: 260 seconds)
17:55:49 --- quit: Kimundi_ (Ping timeout: 240 seconds)
18:06:36 --- quit: zeus1 (Ping timeout: 252 seconds)
18:09:54 --- join: promach (~promach@2001:e68:4427:94e4:d26c:21ca:18b3:9623) joined #osdev
18:19:57 --- join: sixand (~Thunderbi@113.91.41.191) joined #osdev
20:34:52 --- log: started osdev/18.05.27
20:34:52 --- join: clog (~nef@bespin.org) joined #osdev
20:34:52 --- topic: 'Operating System Development || Don't ask to ask---just ask! || For 3+ LoC, use a pastebin (for example https://gist.github.com/) || Channel logs: http://osdev-logs.qzx.com || Today's log: http://osdev-now.qzx.com || Visit http://wiki.osdev.org and http://forum.osdev.org || Books: http://wiki.osdev.org/Books'
20:34:52 --- topic: set by Mutabah!~tpg@pdpc/supporter/student/thepowersgang on [Sat Sep 16 19:44:15 2017]
20:34:52 --- names: list (clog nj0rd NaNkeen elderK lachlan_s vdamewood jakogut_ empy Kazinsal_ sixand promach smeso return0e_ transistor quc atk banisterfiend Tobba sprocklem trout chaignc godel mischief stephennnn X-Scale janemba tsurai hmmmm port443 wgrant kasumi-owari freakazoid0223 ALowther rain1 aalm CrystalMath nur ohnx Halofreak1990 dbe oldtopman eremitah Dreg frolv Fatalnix gattuso Lucretia behalebabo jakogut pie__ dafnamay[m] Guest21615 Xark zaquest magnificrab Amaan)
20:34:52 --- names: list (lucebac MDude froggey SlyFawkes Shikadi booyah doug16k bauen1 raiz Mikaku lava bork h4nnibal Brnocrist gtucker Burgundy bcos_ mrush jeaye FManTropyx MindlessDrone promach_ allight_ sahibatko epony drsn0w xuzhongxing[m] dengke adam4813 ptx tylerdma1e mlen XgF pg12 @ChanServ z0ttel ampotos_ milesrout qeos jordyd grumble valerius Sjors goncalo lecx ZipCPU Nokurn Affliction Plazma lutoma mavhq ryoshu hiei SlashLife divine robert_|disconne glfernando davxy sdk93)
20:34:52 --- names: list ([Brain] Boreeas gxt Naabed- aiwakura Griwes awordnot azonenberg jjuran stee xiphias gwoplock dude12312414 CWiz brynet Guest29863 umpc bslsk05 puckipedia pikhq latentprion @Mutabah Vercas jsgrant[m] hl Ringil[m] kataria[m] fristonio[m] samirhali mniip tj hydraz kuldeep r3n cruxeternus tux3 m712 Drakonis[m] ^Inuyasha^ merry bluezinc RudyValencia sham1 zopsi diginet greaser|q zerd Meow-J___ sleepyspider geist swetland dave24 paulbarker dmj` mntmn huaw nshp)
20:34:52 --- names: list (zhiayang SM0TVI earlz marcthe12 hunterlabs celadon dustinm` plonk nightmared exezin Prf_Jakob Olgierd Gynvael tomaw geordi ecraven ybden Benjojo Belxjander thinkpol newnix byte512 Tanjoodo andrewrk ZeDestructor Thalheim EricB olsner k4m1 shirk rorx jp FreeFull glenda silas lkurusa VOIDShana[m] llmm_ Stary[m] am2on equalunique[m] hcd[m] Wallbraker htafdwes[m] caseypme[m] rw-r-r-0644[m] szpght klange Tegu opios mawk mwk phr3ak zanneth bitch trn bpye tuxillo)
20:34:52 --- names: list (spencerb ephemer0l_ abra0 Defcronyke radens multi_io funnel kanzure chedr ornitorrincos Peetz0r Youmu hollande Guest65775 cja D4rk `Ivan butterthebuddha zentrum_ Simon70 oshogbo_ sssnap Patater Celelibi air Kydd Gaudasse htafdwes LambdaComplex kleinweby klys pointfree R3x_ zgrepc ovf tktech FireFly Guest24330 mpetch Khaotic Nach0z nsh lxpz kbeckmann reda CompanionCube sae2 pixelherodev sircmpwn sha-2 snsapiens Guest41100 aejsmith izabera beaky tyler569)
20:34:52 --- names: list (clever Shockk cc0 brad_d eax64 klange-tsun renopt apetresc alexlegg grange_c Toldierone Guest4708 chrisf Meisaka bipul shakalaka JodaZ_ shikhin sferrini Compy_ danielinux c0riolis barbershopper stux shakeel Guest73762 md_5 catern shymega qoxncyha kutio malbx- nikivi anonnumberanon graphitemaster Ameisen acidx tkln j00ru mrcivvy sigtau Stary heddwch grapte kbw colona_ dwn emdub_ uplime krzywix Aerath Guest2101 pharaun stux- HeTo Guest81514 _Hyper_ [com]buster)
20:34:52 --- names: list (dom96 ensign metaglog Dotti marky _mjg_ amygara amj_ Helio- heinrich5991 corecode PyroLagus CcxWrk mlugg blueglass Wild talin SN4T14 dostoyevsky ikonia)
20:41:24 --- join: Sonicbit (~Sonicbit@185.53.85.8) joined #osdev
20:46:50 --- join: Guest82714 (aurabindom@gateway/shell/matrix.org/x-tavkxyswnbtqwhme) joined #osdev
20:48:32 --- quit: elderK (Quit: WeeChat 1.9)
20:49:12 <Guest82714> Hi all, I am reading about kernel module loading, and I am aware of modprobe, and how to make modules autoload or to blacklist them. My question is, what component/framework is resonsible for identifying the modules necessary in the system during installation (some laptops have broadcom wifi cards, while other have intel). ?
20:49:39 <Guest82714> After installation, the configuration for loading the correspnding wifi kernel module is added, but who did it ?
20:50:05 <Mutabah> Guest82714: I don't know for sure how linux does it...
20:50:17 <Guest82714> I see
20:50:21 <lkurusa> The correct channel is probably ##kernel
20:50:21 <Mutabah> but the general model is that a core module enumerates the various busses
20:50:23 <lkurusa> or ##linux
20:50:35 <Guest82714> all righly
20:50:37 <Mutabah> and from there figures out what drivers are needed for each device it sees
20:51:20 <lachlan_s> Does x86_64 not have some method of blasting physical frames to zero without memsetting the whole thing?
20:51:41 <Mutabah> lachlan_s: memsetting is how you do it ;)
20:51:56 <Mutabah> Maybe look into optimising your memset implementation?
20:52:29 <lachlan_s> I did, it's down to 230 thousand cycles
20:52:31 <Mutabah> There is an instruction on very modern CPUs that zeroes large blocks of memory, bypassing the cache - but it's 1. new, and 2. might have some other issues
20:52:36 <Mutabah> what's the impl?
20:52:50 <Mutabah> Shouldn't take that long to run a 4KB memset
20:53:05 <lachlan_s> Oh, no, that's zeroing a mb
20:53:05 <Guest82714> Mutabah: so i'm think that the pci subsystem would discover the wifi device and makes the kernel load the modules. After installatoin, someone (maybe modprobe) checks the loaded module and writes the necessary config to load them in subsequent boots. Does it make sense?
20:53:17 <lachlan_s> It's something the rust compiler emits
20:53:23 <Mutabah> Guest82714: Sounds very likely
20:53:28 <lachlan_s> I had a very naive one beforr
20:53:40 <Mutabah> 1MB zeroing?
20:53:43 <Mutabah> That's not a page
20:53:48 <Guest82714> Mutabah: Thank you!. I'll ask in linux to confirm!
20:53:51 <Mutabah> A page is either 4KB or 2/4MB
20:53:58 <lachlan_s> I know, it's a number of pages
20:55:14 <lachlan_s> I was going to try `rep stosb`, but the way it's set up rn, I can't really have a custom implementation
20:55:31 <lachlan_s> I'll fix that and try it eventually
20:55:55 --- nick: Guest82714 -> jayaura
20:56:10 <Mutabah> lachlan_s: for large regions, use `rep stosq`
20:56:32 <Mutabah> either the CPU optimises it for you, or you're using a nice large write size :)
20:56:49 <Mutabah> For even larger regions, it might be worth using SSE and some really large writes
20:56:56 <lachlan_s> I read somewhere that rep stosb was actually optimized better then rep stosq
20:57:01 <lkurusa> there is some non-temporal instructions that could improve performance
20:57:09 <Mutabah> Depends on the processor really
20:57:14 <lkurusa> https://www.felixcloutier.com/x86/MOVNTI.html
20:57:15 <bslsk05> ​www.felixcloutier.com: MOVNTI — Store Doubleword Using Non-Temporal Hint
20:59:12 --- quit: banisterfiend (Quit: My MacBook has gone to sleep. ZZZzzz…)
20:59:58 --- join: sixand1 (~Thunderbi@113.91.41.191) joined #osdev
21:02:58 --- quit: sixand (Ping timeout: 252 seconds)
21:04:35 --- quit: sixand1 (Ping timeout: 260 seconds)
21:07:23 <_mjg_> lkurusa: nobody is using this to zero pages
21:07:48 <_mjg_> lkurusa: this ends up being slower in real world tests
21:08:05 <lkurusa> hm, that's interesting
21:09:20 <_mjg_> not really
21:09:49 <_mjg_> you do more traffic to memory
21:10:07 <_mjg_> if you were to not use these pages to begin with then it would be a win
21:10:23 <_mjg_> e.g. for zeroing upfront
21:10:41 <lkurusa> I assume that you wouldn't immediately use those 1MB of stack space
21:10:43 --- join: awang (~awang@cpe-98-31-27-190.columbus.res.rr.com) joined #osdev
21:12:43 --- quit: pie__ (Remote host closed the connection)
21:13:08 <_mjg_> why are you zeroing 1MB of staack upfrint
21:13:10 --- join: pie_ (~pie_@unaffiliated/pie-/x-0787662) joined #osdev
21:14:14 <_mjg_> let the thread fault on it as needed
21:16:38 --- join: AverageJ0e (~joe@ip98-167-200-207.ph.ph.cox.net) joined #osdev
21:35:11 --- quit: awang (Ping timeout: 245 seconds)
21:35:34 --- quit: NaNkeen (Ping timeout: 248 seconds)
21:41:08 --- quit: Sonicbit (Quit: My iMac has gone to sleep. ZZZzzz…)
21:44:05 --- join: awang (~awang@cpe-98-31-27-190.columbus.res.rr.com) joined #osdev
21:45:16 --- quit: freakazoid0223 (Quit: I used to think I was indecisive, but now I'm not too sure.)
21:49:49 --- quit: AverageJ0e (Ping timeout: 240 seconds)
21:55:38 --- join: Lowl3v3l (~Lowl3v3l@141.35.23.133) joined #osdev
22:02:02 --- join: xenos1984 (~xenos1984@2001:bb8:2002:200:6651:6ff:fe53:a120) joined #osdev
22:08:35 <doug16k> lachlan_s, a possible strategy is to maintain a pool of already-zeroed pages. allocations are serviced from the zeroed page pool. if the zeroed page pool is empty, fallback to explicitly zeroing on allocation. when pages are freed they are queued for zeroing. a minimum priority thread can then periodically zero a few pages and move them to the zeroed page pool (but not too many, you don't want to annihilate the cache).
22:09:12 <doug16k> you can make the worker thread tune its aggression based on the ratio of the number of zeroed:dirty pages. clear a few pages if there are plenty of free pages, clear many if there are almost none
22:09:52 <doug16k> this way, the cpu only spends time clearing pages when there is nothing better to do
22:12:03 <_mjg_> is there any real world benefit to it these days?
22:12:15 <_mjg_> no major os is doing it and last one i heared about trying it out gave up on it
22:12:54 <doug16k> windows does it
22:13:22 <_mjg_> background page zeroing? *still*?
22:13:27 <_mjg_> i know they used to do it
22:13:29 <doug16k> why not?
22:13:41 <doug16k> use idle time doing something useful
22:14:02 <_mjg_> especially so with rep stosb you can clear the page quite fast and you can use the idle time to conserve power
22:14:49 <_mjg_> can you point me at windows docs saying they still do it? i can't find anything
22:15:12 <doug16k> no I can't. I stopped caring about windows several years ago
22:15:24 <_mjg_> besides, if you have any load which really wants pages the reserves get shredded instantly
22:15:32 <_mjg_> you end up zeroing on demand anyway
22:16:24 <_mjg_> extra point is that you probably want to reuse the pages you just had instead of reaching for new ones
22:16:25 <doug16k> clearing right before use does have the advantage of bringing the page into the cache
22:16:47 <_mjg_> well there were systems which used nt stores even with on demand clearing
22:16:50 <_mjg_> side note
22:17:16 <doug16k> NT stores are awful when you turn around and use the page, which is highly likely right after it is allocated
22:17:16 <_mjg_> (in fact openbsd still does it :>)
22:17:24 <_mjg_> yep
22:17:39 <_mjg_> i got people claiming it was a win in 32-bit times which may be true, i don't know
22:17:45 <_mjg_> it defo is a loss on x86-64
22:18:13 <_mjg_> their argument being you don't use most of the page anyway and nt store don't pollute caches, so you end up with fewer misses
22:18:33 <_mjg_> as in you evict less of the stuff you want in the cache
22:18:35 <doug16k> x86-64 tend to have massive caches
22:18:42 <_mjg_> hence it does not hold anymore
22:18:50 <izabera> why is there no instruction to clear a page?
22:19:01 <doug16k> izabera, ryzen has clzero, clears a cache line
22:19:08 <_mjg_> clzero is also nt stores
22:19:31 <Mutabah> izabera: there's general purpose instructions that can do that task
22:19:56 <izabera> such as?
22:20:00 <_mjg_> rep stosb
22:20:03 <izabera> well yes
22:20:06 <Mutabah> clzero
22:20:09 <_mjg_> i think the claim is that if you know for a fact it has to be 4k the hardware could have some for extra opt
22:20:11 <Mutabah> `movnt`
22:20:11 --- quit: promach (Ping timeout: 260 seconds)
22:20:21 <_mjg_> have room*
22:21:10 <izabera> the argument about bringing the page into the cache being a win seems absurd
22:21:17 <_mjg_> ?
22:21:20 <doug16k> why?
22:21:28 <izabera> because pages are large
22:21:36 <_mjg_> and so are caches
22:21:37 --- join: `Guest00000 (~user@37.113.160.44) joined #osdev
22:21:40 <doug16k> caches are too
22:21:40 <izabera> not as large
22:21:41 <_mjg_> literally megabytes
22:21:58 <izabera> well yeah but you're evicting a page worth of data
22:22:34 <doug16k> L1 is much larger than a page, L2 is far larger still, and L3 is insane size compared to a page
22:22:45 <izabera> that's not what i'm saying
22:22:50 <Mutabah> Why would you want a zeroed page to be in cache?
22:22:55 <izabera> i'm saying that you're throwing away data that was already in cache
22:23:00 <Mutabah> The user isn't going to be reading from it, it's already zeroed
22:23:03 <Mutabah> they're going to write to it
22:23:23 <doug16k> cpus write allocate - writing a line brings it into the cache
22:23:25 <Mutabah> if they user it at all
22:23:33 <Mutabah> *use it at all
22:23:34 --- quit: vdamewood (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
22:23:57 <doug16k> for the same reason reading brings it in, you want the subsequent writes to hit it
22:24:28 <doug16k> also, it is very common for written data to get read soon later
22:24:50 <_mjg_> if you zero on demand with rep movsq/whatever which brings/keeps the page in cache you have excellent chances of avoiding a lot of memory traffic
22:25:01 <_mjg_> think fork/exit
22:26:49 <_mjg_> in fact peole bored enough can easily test memory traffic with flipping clear_page between sse and just rep stosb
22:27:00 <_mjg_> during e.g. kernel build or somethign else fork-heavy
22:27:36 <_mjg_> fwiw freebsd used to do nt stores for on demand zeroing (inherited from the i386 port) and flipping it to rep stos saved about 3 seconds of real time
22:27:44 <_mjg_> of kernel build
22:27:54 <_mjg_> specifically because of reduced traffic
22:28:16 --- join: oaken-source (~oaken-sou@p5DDB573C.dip0.t-ipconnect.de) joined #osdev
22:29:17 --- join: Guest4630 (4d3b9548@gateway/web/cgi-irc/kiwiirc.com/ip.77.59.149.72) joined #osdev
22:34:37 <doug16k> rep stos has the (small) advantage of relaxed ordering on intel processors, if IA32_MISC_ENABLE MSR "fast strings enable" is set
22:35:27 <_mjg_> page zeroing is still ez 10-15% of total cpu time when building stuff
22:35:53 <_mjg_> (and any reserves of pre-zeroed pages get shredded in seconds, so don't really help)
22:38:03 --- join: Humble (~hchiramm@106.208.137.122) joined #osdev
22:41:06 --- join: sixand (~Thunderbi@113.91.41.191) joined #osdev
22:44:59 --- quit: Humble (Read error: Connection reset by peer)
22:51:53 <izabera> funny how people are willing to go to such lengths to reduce the inherent braindamaged inefficiencies of fork/exec, instead of replacing it
22:52:50 <_mjg_> the biggest win in the area is changing your workload to stop doing wtf execs to begin with
22:53:28 <_mjg_> i don't think anyone argues here
22:58:37 --- join: Goplat (~Goplat@reactos/developer/Goplat) joined #osdev
23:00:28 --- join: Humble (~hchiramm@106.208.169.108) joined #osdev
23:09:43 --- quit: Humble (Ping timeout: 245 seconds)
23:13:47 --- join: andrei-n (~andrei@184.206-65-87.adsl-dyn.isp.belgacom.be) joined #osdev
23:21:34 --- join: NaNkeen (~nankeen@115.164.203.138) joined #osdev
23:22:44 --- join: Humble (~hchiramm@106.208.163.119) joined #osdev
23:26:45 --- join: regreg (~regreg@85.121.54.224) joined #osdev
23:32:20 --- quit: lachlan_s (Quit: Connection closed for inactivity)
23:36:54 --- quit: sixand (Remote host closed the connection)
23:38:29 --- join: grouse (~grouse@83-233-9-2.cust.bredband2.com) joined #osdev
23:41:01 --- join: sixand (~Thunderbi@113.91.41.191) joined #osdev
23:43:03 --- quit: oaken-source (Ping timeout: 245 seconds)
23:47:48 --- join: immibis (~chatzilla@222-155-160-32-fibre.bb.spark.co.nz) joined #osdev
23:48:31 --- join: Naergon (~Naergon@188.29.165.45.threembb.co.uk) joined #osdev
23:49:27 <sahibatko> doug16k: size of the GDT entries is clear to me, the entries themselves are documented quite well, I wondered about the segment selector for LTR instruction, section 3.4.2 in Intel manual vol3. states it is 8-bytes-based index, but it works as 4-bytes-based index in my "booter" code, I find it weird
23:50:56 <Mutabah> sahibatko: Unless your bootloader is doing 16-bit pmode things, it's effectively an 8-byte aligned offset with the lower bits used for flags
23:54:16 <sahibatko> Mutabah: no, 16 bit mode is not even once triggered. So it seems it "works by accident". I will have to re-visit that.
23:59:59 --- log: ended osdev/18.05.27