IRC channel logs

2024-10-24.log

back to list of logs

<damo22>solid_black: i implemented the multiboot info device
<damo22>patches on the mL
<gnucode>I was wrong. the compiled hello translator does have debug symbols included.
<gnucode>I'm setting the translater via
<gnucode>settrans -fgaPc $HOME/hello /usr/bin/env LD_LIBRARY_PATH=/usr/lib/debug $HOME/prog/gnu/hurd/debian-hurd/hurd/build-deb/trans/hello
<gnucode>then in another terminal I type in "gdb attach PID-number"
<gnucode>then in the first terminal I press enter/return
<gnucode>It sort of works...when I cat ~/hello I don't see any output. but I can't set any breakpoints on in gdb.
<gnucode>b trivfs_S_io_read
<damo22>when you attach gdb to a running translator it stops execution
<damo22>you have to set the breakpoint then, and then continue
<gnucode>"No symbol table is loaded. Use the 'file' command'
<gnucode>I can't set a breakpoint.
<damo22>compile hello with -g
<gnucode>damo22: I did.
<damo22>you need to run gdb against the binary
<damo22>gdb /path/to/hello --pid=X
<gnucode>oh.
<gnucode>let me try that then.
<damo22>but that will try to execute hello
<damo22>hmm no
<damo22>that should wokr
<gnucode>I think I've got it...let me try again.
<gnucode>working. I can set breakpoints!
<gnucode>thanks
<gnucode>I can do "s" and "n"
<gnucode>put it's not outputting the source location. I can probably do this inside emacs as well.
<gnucode>I just need to remember how to do it.
<gnucode>ok now I am seeing source code lines.
<gnucode> hmmm...it's still not quite working like it should. I'll mess with it tomorrow.
<damo22>youpi: where does console-client get installed on a hurd system?
<damo22>/bin/console i guess
<damo22>im getting some tiny pixels at the top of the screen
<damo22>somehow i need to scale up the glyphs
<solid_black>hi
<solid_black>gnucode, damo22: gdb is broken w/ threading, I posted an analysis of why a while ago to the list
<solid_black>it works much much better if you switch to single-threaded mode
<azert>damo22: i suspect fonts are stored as bits arrays
<azert>back in the day memory was expensive that’s why the bits array
<azert>If you expand them into the appropriate pixel-size first, then you can also set the color
<damo22>the problem is that 80x25 mode is 80 chars by 25 chars, not 80 pixels by 25 pixels
<damo22>so i added a conversion parameter for width of char and height of char
<damo22>but i suspect the flat video buffer doesnt work then
<damo22>you cant just set the value of the video memory as a char
<azert>damo22: you need to blit in the font bitmaps
<azert>damo22: you can think of vga/ega character mode as a very specific form of hardware acceleration. This is not present anymore on modern hw. Cheap video hw nowadays don’t provide any acceleration since CPUs are fast enough to blit characters on the screen
<youpi>damo22: 0xb8000 is only for textmode anyway
<youpi>you can't blit graphcs into it
<azert>damo22: you cannot just fix the current vga driver, you need to make a new one
<azert>supporting a linear framebuffer will be very useful. Even though Linux is moving away from that as we are speaking because modern gpus are in fact programmable pipelines and don’t even expose a linear framebuffer. But I don’t think that is something needed
<azert>particularly because gpus aren’t even compatible to each other from the same brand
<azert>Having the firmware preprogramming the pipeline and exposing a linear frame buffer is still something very commonly available
<azert>but it is understandable that they are phasing away ega text mode emulation
<gnucode>sneek later tell solid_black thanks for the gdb tip. I didn't realize that threaded debugging was borked on the Hurd.
<sneek>Will do.
<gnucode>Well I figured that I would create a wiki page detailing how to contribute to the Hurd. Kind of like how Guix has a section in their manual.