klange changed the topic of #osdev to: Operating System Development || Don't ask to ask---just ask! || For 3+ LoC, use a pastebin (for example https://gist.github.com/) || Stats + Old logs: http://osdev-logs.qzx.com New Logs: https://libera.irclog.whitequark.org/osdev || Visit https://wiki.osdev.org and https://forum.osdev.org || Books: https://wiki.osdev.org/Books
selene_ has joined #osdev
isaacwoods has quit [Quit: WeeChat 3.6]
SpikeHeron has joined #osdev
nyah has quit [Ping timeout: 252 seconds]
arch-angel has quit [Ping timeout: 268 seconds]
<klys> geist I found the forth card: https://www.ebay.com/itm/125497309826
<bslsk05> ​www.ebay.com: FORTH Card For Apple II 2 II+ II Plus Europlus and IIe FORTH Card | eBay
<geist> ah yeah look at that. does it just boot directly into it?
<geist> what implementation of forth is it?
<klys> " plug that card on Slot 7 and you have instantly RAM/ROM test and then FORTH ver.1.0"
<klys> so it's described in a book
<bslsk05> ​www.forth.com: Starting FORTH - FORTH, Inc
<geist> well, yeah, but i mean exactlyk what implementation of 6502 forth is it
<geist> since it's clearly a forth interpreter for 6502
<geist> the pictures there show that it's just from taiwan
netbsduser has quit [Remote host closed the connection]
<klys> probably fig-forth
<heat> everyone's talking about fourth but where's fifth?
<klys> I used to have that actually, on an old dead floppy
<klys> it was a forth too
_xor has joined #osdev
<klys> for that matter it's likely f83 version 1.0
<klys> so newer than f79
<geist> yah mostly just curious if it exists elsewhere, might be bored and look at it's implemetation
<geist> since it probably exists in 6502 asm form
<klys> that requires the forth tho
<klys> it's just the assembler part
<wxwisiasdf> F O R T H
arch_angel has joined #osdev
<heat> 4 t h
<bslsk05> ​web.archive.org: AtariWiki V3: FigForth Source Listing
<klys> er that couldn't be the forth part either
<klys> oh I see the strings here "ASC '.'" for example
wxwisiasdf has quit [Ping timeout: 268 seconds]
<klys> and a more legible version (not this parsed version, just a reference to it) is here: http://www.forth.org/fig-forth/fig-forth_6502.pdf
<klys> except this reference is version 1.1
<klys> in any case, I saw forth in card form like this as early as 1991 or so
<klys> and it looks like this card was produced as early as 1995: https://github.com/rallepalaveev/romcard
<bslsk05> ​rallepalaveev/romcard - A card with 8x64kB EPROMs for Apple ][ compatible computers with binary files and DOS 3.3 (0 forks/0 stargazers/NOASSERTION)
<bslsk05> ​github.com: Prodos-4MB-NVRAM-Drive/Nvramcard_v4.0_4MB-PLD.dsn.pdf at main · rallepalaveev/Prodos-4MB-NVRAM-Drive · GitHub
zaquest has quit [Remote host closed the connection]
<klys> presumably if you wanted to do that on an 8-bit pc you'd use this https://cdn.hackaday.io/files/1665297124776736/isa8bit-rom-reva.pdf
opal has quit [Ping timeout: 258 seconds]
opal has joined #osdev
<klys> and here's an apple ii binary of a fig-forth port which mentions the above book: https://sites.google.com/site/drjohnbmatthews/apple2/proforth
<bslsk05> ​sites.google.com: Dr.John.B.Matthews - ProForth
zaquest has joined #osdev
selene_ has quit [Quit: WeeChat 3.6]
selene_ has joined #osdev
[itchyjunk] has quit [Remote host closed the connection]
MiningMarsh has quit [Read error: Connection reset by peer]
MiningMarsh has joined #osdev
arch_angel has quit [Ping timeout: 244 seconds]
selene_ has quit [Quit: WeeChat 3.6]
heat_ has joined #osdev
heat has quit [Read error: Connection reset by peer]
vdamewood has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
frkzoid has quit [Ping timeout: 255 seconds]
matt__ has joined #osdev
matt__ is now known as freakazoid333
arch_angel has joined #osdev
heat_ has quit [Ping timeout: 260 seconds]
vdamewood has joined #osdev
sonny has joined #osdev
vinleod has joined #osdev
FreeFull has quit []
vdamewood has quit [Ping timeout: 255 seconds]
sonny has quit [Ping timeout: 252 seconds]
sonny has joined #osdev
gog has quit [Ping timeout: 268 seconds]
smach has joined #osdev
smach has quit []
sonny has quit [Quit: Client closed]
smach has joined #osdev
smach has quit [Remote host closed the connection]
smach has joined #osdev
_xor has quit [Quit: brb]
smach has quit [Client Quit]
sonny has joined #osdev
[itchyjunk] has joined #osdev
eroux has quit [Ping timeout: 264 seconds]
eroux has joined #osdev
sonny has quit [Quit: Client closed]
sonny has joined #osdev
[itchyjunk] has quit [Remote host closed the connection]
smach has joined #osdev
smach has quit [Client Quit]
smach has joined #osdev
sonny has quit [Quit: Client closed]
outfox has quit [Ping timeout: 255 seconds]
outfox has joined #osdev
m5zs7k has quit [Ping timeout: 264 seconds]
m5zs7k has joined #osdev
heat_ has joined #osdev
<geist> klys: neat!
archenoth has quit [Ping timeout: 244 seconds]
freakazoid333 has quit [Ping timeout: 244 seconds]
GeDaMo has joined #osdev
marshmallow has joined #osdev
netbsduser has joined #osdev
archenoth has joined #osdev
nyah has joined #osdev
vinleod has quit [Quit: Life beckons]
frkzoid has joined #osdev
sikkiladho has joined #osdev
<sikkiladho> Happy to see the little kernel on my laptop, finalllyyy. https://i.imgur.com/4fmoy0R.png
frkzoid has quit [Ping timeout: 255 seconds]
kof123 has joined #osdev
heat has joined #osdev
heat_ has quit [Read error: Connection reset by peer]
gxt has quit [Remote host closed the connection]
gxt has joined #osdev
jack_rabbit has joined #osdev
SpikeHeron has quit [Quit: WeeChat 3.6]
antranigv has quit [Ping timeout: 260 seconds]
<heat> we have achieved comedy
antranigv has joined #osdev
potash has quit [Quit: ZNC 1.8.2 - https://znc.in]
potash has joined #osdev
<sikkiladho> heat: thanks :(
nur has joined #osdev
SpikeHeron has joined #osdev
matt__ has joined #osdev
carbonfiber has joined #osdev
isaacwoods has joined #osdev
foudfou has quit [Quit: Bye]
foudfou has joined #osdev
xenos1984 has quit [Ping timeout: 260 seconds]
xenos1984 has joined #osdev
matt__ has quit [Ping timeout: 255 seconds]
frkzoid has joined #osdev
smach has quit []
smach has joined #osdev
gxt has quit [Ping timeout: 258 seconds]
eroux has quit [Ping timeout: 252 seconds]
gxt has joined #osdev
eroux has joined #osdev
arch_angel has quit [Ping timeout: 260 seconds]
eroux_ has joined #osdev
eroux has quit [Ping timeout: 244 seconds]
wxwisiasdf has joined #osdev
<wxwisiasdf> hello people developing operations :D
xenos1984 has quit [Ping timeout: 260 seconds]
carbonfiber has quit [Quit: Connection closed for inactivity]
eroux has joined #osdev
eroux_ has quit [Ping timeout: 244 seconds]
xenos1984 has joined #osdev
FreeFull has joined #osdev
<heat> wxwisiasdf, hello person developing developer operations
nvmd has joined #osdev
gog has joined #osdev
SpikeHeron has quit [Quit: WeeChat 3.6]
SpikeHeron has joined #osdev
bxh7 has joined #osdev
lkurusa has joined #osdev
sikkiladho has quit [Quit: Connection closed for inactivity]
bxh7 has quit [Quit: ZNC 1.8.2 - https://znc.in]
lkurusa has quit [Ping timeout: 260 seconds]
bxh7 has joined #osdev
eroux has quit [Ping timeout: 244 seconds]
eroux has joined #osdev
pretty_dumm_guy has joined #osdev
<geist> yay
<gog> hi
<gog> good morning
saltd has joined #osdev
saltd has quit [Remote host closed the connection]
<wxwisiasdf> hmm
<gog> good morning to you too
tarel2 has joined #osdev
<geist> hihi
<tarel2> What is the os in os dev here , Linux ?
<geist> no, usually homegrown
<GeDaMo> This channel is for people interested in making their own OSs
sonny has joined #osdev
<sonny> How is the stack size determined?
<geist> depends. for programs or for kernel stacks?
<geist> or just in gneeral?
<sonny> for programs
<sonny> processes*
<geist> ah wlel, in gneral i think for the first process each os has a default stack size and/or it's described in the binary itsel f(ELF has some tags for this)
<sonny> I.e. the OS tells the programmer the stack size, but as an implementor how do you choose a suitable size?
<geist> for secondary threads you can specify the stack size in the thread routine creation args, usually, though probably a reasonable default is picked if ythe program doesn't care
<geist> the short of it is for user processes i thinnk most OSes the stack size is mostly in control of the user programmer, and the OS/kernel is just doing what it's told, inn short
<sonny> Also I assume that when the process has the stack and heap reach their limits a new page is requested?
<sonny> ah ok
<geist> and yeah the exact mechanism that stacks use to grow, but on anything at least reasonably modern, the stacks will be demand faulted
<geist> and at least grow to their maximum size before running out
<tarel2> wow, GenDaMo , your own os that is cool.
<sonny> that's sensible
<GeDaMo> I don't have one :P
<tarel2> Well, even wanting to make an os is crazy.  What a big app
<geist> sonny: with multithreaded apps though a given thread's stack cant grow forever
<geist> since there are other stacks there too, so usually you pick some sort of reasonable max size, reserve the virtual memory for it, and then leave it at that
<sonny> have people done a lot of profiling to figure this out? I assume the popular OSes have a similar limit
<tarel2> so os dev do you all write assembly ? os it c mostly and a bit of assembly ?
<sonny> C is a popular language for osdev
<sonny> doesn't seem to require a lot of assembly
<geist> sonny: it's a tradeoff of 'burning' virtual memory and giving a reasonable limit yeah
<geist> i think i've seen it something like say 8MB for the first thread and then subsequent threads get 1MB, etc
<geist> as a default at least
<geist> with modern 64bit systems the amont of virtual memory you have available isn't so much a limit for the stacks, so it's not a general concern
<geist> though 64bit cpus tend to use more stack because of additinoal register sies being dumped to the stack
Ali_A has joined #osdev
<sonny> oh, even with more registers I guess there's not enough, and that split sounds like the main thread is to do most of the work
<sonny> I have to go, but thanks for explaining
<Ali_A> I really wish there was a log, so I can see what sonny was talking about
<geist> there is a lot
<geist> see the topic
<chibill> Ali_A: I also get to see everything that has happened since I am connected thru matrix.
<mjg_> i'm gonna say there is a huge quality of life improevement for going 32 -> 64 bit
<mjg_> my fav little bit: if you need to allocate unique integers, simplest thing you can do is just keep adding 1
<Ali_A> As far as I know, since I can not stay online, I can not see what was missing before i join
<mjg_> no need to track squat as long as you can stick to 64 bit numbers
<geist> Ali_A: did you see the logs in the topic?
<geist> there's a link to a site that tracks logs of the channel
<geist> mjg_: yeah we currently do that for tracking unique ids to kernel objects in fuchsia
<tarel2> I have wrote / coped code  in assembly for linux and a micro controller . that is one reason I learned assembly
<geist> tarel2: cool, well, there is generally some low level need for assmbly in most kernels yes
<geist> though not as much as you generally think
sonny has quit [Ping timeout: 252 seconds]
<tarel2> so that small amount of assembly , what is that used for?
<geist> usually low level things like interrupt handlers
<geist> or the first part of it, the part that saves registers and then calls into higher level code
Ali_A has quit [Quit: Client closed]
<j`ey> and also for setting system registers
<geist> yah
<geist> usually in the form of inline assembly
<tarel2> what is inline assembly?
<geist> it's a way to insert raw assembly instructions in higher level languages
<GeDaMo> Some C compilers allow you to put asm in the middle of C functions
<geist> like C or C++, or even Rust
<bslsk05> ​github.com: lk/x86.h at master · littlekernel/lk · GitHub
<geist> there's otherwise no way to access the special cr3 regsiter in C, so I use inline assembly to do it (and wraps it in a helper function so it is nice to use)
FatAlbert has joined #osdev
<FatAlbert> hello #osdev :)
<tarel2> I love being able to ask real programmers this.  for better then reading some wiki pedia
<geist> tarel2: cool!
<geist> in terms of things like the assembly when taking an interrupt or exception, here's a quickie example: https://github.com/littlekernel/lk/blob/master/arch/x86/64/exceptions.S#L55
<bslsk05> ​github.com: lk/exceptions.S at master · littlekernel/lk · GitHub
<geist> that code bridges the gap between taking an irq and getting into C code
<tarel2> does libera chat have firmware  chat rooms?
<GeDaMo> 'firmware' is a bit generaic
<tarel2> is by the hardware?
<GeDaMo> You can search channel names with /msg alis list *pattern* and channel topics with /msg alis list * -topic *pattern*
<GeDaMo> You can limit the results to channels with at least 10 nicks by adding -min 10
<tarel2> recently , learned about the programming room.  I being wanting to go deeper but I don't know what is on  libera chat
<GeDaMo> I'm also in ##asm for assembly language programming
<tarel2> I see you around a lot
<GeDaMo> :|
<tarel2> I have noticed over time,  a lot of people who I see in the rooms
<FatAlbert> GeDaMo: you alive and kicking !
<tarel2> do you know other Linux people  in person?  like you could go have a beer with them.  I don't
<GeDaMo> See if there's a Linux User's Group near you
<GeDaMo> Or maybe a hacker / maker space
<tarel2> I did that one time,  It was like older timers who have seen everything , so they where way from away from me and the people who like and play with it.
<tarel2> the old timers where like being in the electrics room, so beyond me.
foudfou has quit [Ping timeout: 258 seconds]
FatAlbert has quit [Quit: WeeChat 3.6]
foudfou has joined #osdev
saltd has joined #osdev
elderK has joined #osdev
smach has joined #osdev
smach has quit [Client Quit]
saltd has quit [Remote host closed the connection]
GeDaMo has quit [Quit: Physics -> Chemistry -> Biology -> Intelligence -> ???]
_xor has joined #osdev
frkzoid has quit [Ping timeout: 244 seconds]
matt__ has joined #osdev
matt__ is now known as freakazoid333
FreeFull has quit []
<heat> tarel2, libera has #coreboot
<heat> that's as much firmware as you will have really
<heat> maybe uboot as something? I don't know
<heat> s/as/has/
saltd has joined #osdev
<j`ey> yes #u-boot
<heat> the problem with firmware is that it's usually just a "insiders club" and its kinda hard to get into it
<heat> only by working at some companies or really trying hard (or participating in GSoC at coreboot or tianocore kinda)
<j`ey> u-boot is more approachable I think
<heat> maybe. i imagine the hardware doesn't get more trivial to program though
<heat> maybe even harder since you dont have the de-facto standardization of intel and amd chipsets
<heat> well, "standardization"
<j`ey> I found it more approachable than edk2 at leats
<heat> everything is more approachable than "how do I do this?" *radio silence* :)
<heat> although I think we really did do a lot of valuable work this GSoC for beginners
<heat> we wrote a simpler ovmf from scratch
<bslsk05> ​github.com: Commits · theomacx86/edk2-platforms · GitHub
<j`ey> for what purpose?
Bitweasil- is now known as Bitweasil
<heat> minplatform, also as a learning tool
<tarel2> RADIO silence , that is funny.
<heat> it's significantly simpler than OVMF since it fits into the MinPlatform style and can reuse all that stuff
<heat> OVMF has to reimplement everything, as would be tradition in uefi firmware
<j`ey> x86 only I assume?
<heat> for now
<heat> I want to add ARM64 after this is over though
<heat> although it will take a bit of effort, we would probably be the first ARM64 board to use this
<heat> and the typical Arm packages don't fit into this
selene_ has joined #osdev
FreeFull has joined #osdev
nvmd has quit [Quit: WeeChat 3.6]
<tarel2> get a pi 400
<heat> pi's dont really have traditional firmware
<tarel2> haha no
<heat> you /can/ load EDK2 on them, but it's dollar-store firmware development
selene_ has quit [Quit: WeeChat 3.6]
Vercas6 has joined #osdev
<tarel2> I thought having a pi , being all the same hardware , it was be easyer to find os for it.
<tarel2> Like if it worked for said pi , then you good to go
<tarel2> in reality it just nope , you just have small group of people working on stuff
<tarel2> in on the pi being really popular
carbonfiber has joined #osdev
<saltd> you good to go
<saltd> 00:00:00.747 * Day changed to
<saltd> fsck
<saltd> shit
<saltd> sory wrng people
* saltd actually not sexual anymore
foudfou_ has joined #osdev
foudfou has quit [Ping timeout: 258 seconds]
FreeFull has quit []
wxwisiasdf has quit [Quit: Lost terminal]
scoobydoo has quit [Ping timeout: 252 seconds]
Vercas6 has quit [Quit: Ping timeout (120 seconds)]
pieguy128 has quit [Ping timeout: 260 seconds]
_xor has quit [Quit: bbiab]
invalidopcode has quit [Ping timeout: 260 seconds]
Vercas6 has joined #osdev
mrvn has quit [Ping timeout: 252 seconds]
rpnx_ has joined #osdev
eroux has quit [Ping timeout: 244 seconds]
mrvn has joined #osdev
Vercas6 has quit [Remote host closed the connection]
pieguy128 has joined #osdev
pieguy128 has quit [Ping timeout: 244 seconds]
rpnx_ has quit [Ping timeout: 244 seconds]
\Test_User has quit [Quit: .]
pieguy128 has joined #osdev
pieguy128_ has joined #osdev
pieguy128 has quit [Ping timeout: 260 seconds]
carbonfiber has quit [Quit: Connection closed for inactivity]
pretty_dumm_guy has quit [Quit: WeeChat 3.5]
rpnx_ has joined #osdev
scoobydoo has joined #osdev
SpikeHeron has quit [Ping timeout: 252 seconds]
SpikeHeron has joined #osdev
nyah has quit [Ping timeout: 244 seconds]
[itchyjunk] has joined #osdev