Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system Ok, guys, so some interesting updates. I've majorly restructured the kernel source tree. Drivers are now at the root of the source tree, under drivers/category/driver_lib. Each driver is its own, independent library. The idea is that someone can come along and write a file system driver, or an audio driver, etc., and abstract away IO functionality. The kernel can then pull in this library and give the library functions to perform IO operations. The library does not need to know, nor care, about how those operations are accomplished, so long as the library gets the information it wants. This is most obvious with the partition parsing library; currently it can fully parse GPT partition tables, though it does not do CRC verification for the partition entries themselves yet. This abstraction mechanism makes writing a driver library a bit harder, but you can still use the classic "enforce IO routines" way if you want to (or if you have to). This has, unfortunately, caused us to lose a lot of functionality; though the code for (say) the keyboard is still there, its no longer linked in (I'll be updating it soon enough so that it works).FSes are proving to be a bit of a problem. But progress in general is slow, unfortunately, since I'm the only one working on this and can't dedicate all my time to it. But once I've gotten everything working again, I can start in on EXT2 again. URL: https://forum.audiogames.net/post/545581/#p545581 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system @29, I honestly don't know. I might code my own, because I've never done that before. Porting Orca would require porting ATK, gnome and all that... ug. URL: https://forum.audiogames.net/post/492358/#p492358 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system last question.after coding all the hard stuff, will you code in your own skrean reader? or will you just port orca or nvdA into it?wish you success URL: https://forum.audiogames.net/post/492231/#p492231 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system Another update. Just finished the identify_device() safe function -- its about 400 lines of code or so) which builds all the data structures and strings for you. It unfortunately needs to use memory (I used a Vec<> and an heap-allocated string for drive serial number, media serial number, firmware revision and model number) but that's not much, less than 200 bytes or so. Also, thanks to Smartmontools's source code, specifically their ATA commands source code, helped me figure out the byte swapping that ATA8 ACS does. Its a tad confusing. Now onto verifying the twos compliment CRC32 of the entire structure to verify that the ATA controller and me are on the same page...Edit: all done. However, either my code is messed up, I'm invoking Qemu wrong, or Qemu is not ATA8 ACS compliant, because bits 7:0 of word 255 from identify device should contain 0xA5, but they're all zero. Huh. Weird. Either way it works, or appears to, and I've done enough coding for today, I think. URL: https://forum.audiogames.net/post/492191/#p492191 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system Another update. Just finished the identify_device() safe function -- its about 400 lines of code or so) which builds all the data structures and strings for you. It unfortunately needs to use memory (I used a Vec<> and an heap-allocated string for drive serial number, media serial number, firmware revision and model number) but that's not much, less than 200 bytes or so. Also, thanks to Smartmontools's source code, specifically their ATA commands source code, helped me figure out the byte swapping that ATA8 ACS does. Its a tad confusing. Now onto verifying the twos compliment CRC32 of the entire structure to verify that the ATA controller and me are on the same page... URL: https://forum.audiogames.net/post/492191/#p492191 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system @26:1) The point of this is purely educational, for me at least. I started it in hopes of learning far more about computers and it has been a wonderful experience. And by "far more about computers" I don't mean the stuff you learn everyday, I mean the bloody details that the average joe could care less about.2) As post one indicates, it can't execute any programs whatsoever yet. At this time it outputs both to the screen and to a serial port (either virtual or physical). I've just recently learned how to properly utilize disks, so yeah.3) Its not based off of anything. I wrote it by hand, at first following aguide, but that only got me so far (mainly memory management). The rest of the code I've written myself by hand. URL: https://forum.audiogames.net/post/492179/#p492179 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system don't mean to be mean, but what's the point of this?what kind of skrean readers can you install on it?what is it baste off of? URL: https://forum.audiogames.net/post/492171/#p492171 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system I know that Ethin... Thank you though ` URL: https://forum.audiogames.net/post/492156/#p492156 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system @23, if you really want to understand all of the gory details -- what all the bits mean and all that, the structure names and stuff won't be enough (for things like the HDA driver or the ATA driver). For the HDA driver, you'll need the Intel HDA specification, and for the ATA driver you'll need at least two standards, both of which are unfortunately paid. The first is INCITS 452-2009 (R 2019), ATA/ATAPI Command Set (ATA8-ACS), which is $60.00, and the Serial ATA specification Revision 3.4, which is $75.00. Its unfortunate that they're paid, but they are, and the only way for all of this to even be remotely workable you've gotta have them. The OSDev wiki is also an excellent resource, but it cannot possibly make up for what the standards cover (its ATA command matrix isn't even accurate and holds commands that are no longer defined in the latest revision). URL: https://forum.audiogames.net/post/492139/#p492139 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system Congrats man. I really appreciate and admire people like you. Linux also started as a hobby OS lol. I will look on to the code as I am fascinated how such a low level thing works... Congrats and I wish you the best! URL: https://forum.audiogames.net/post/492123/#p492123 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system I'm back with some major updates to the OS thus far, with, perhaps, some small performance increases here and there.GeneralThe disk I'm using has been recreated. Using NBD (network block device) technology of the Linux kernel, I was able to mount this QCOW2 disk on /dev/nbd0 and format it as GPT with EXT2. Since EXT2 is ridiculously slow at formatting the disk, the disks size is quite small (though that is also because of git hubs file size limitations). It will be enough for our purposes for now however.I've increased the overall memory requirement of the emulation to 1 GB of RAM. Though I could go much (much) higher, my kernel has yet to require that much RAM yet. Hell, it could operate under 16 MB of RAM just fine.Code qualityLast week I ran clippy on the entire project and have gone through and fixed about 99 percent of its warnings. I have also turned on nearly every lint that the Rust compiler has and set it to 'deny', pretty much forcing myself and contributors to use higher code quality in general. This way, its really obvious when someone contributes something and they use #[allow()] to get around a lint. Originally I wanted to set this to 'forbid', which prevents people from overriding the lints, but the macros my kernel uses (i.e. lazy_static!) caused compilation errors, so I'm stuck with deny for now.Core: interruptsThe RTC timer now uses a reader-writer lock instead of a full mutex lock. For those wh odo't know, a reader-writer lock allows unlimited readers to read the data that the lock is protecting, but to write to it exclusive acquisition is needed. A full mutex lock, on the other hand, requires a caller to gain exclusive access to the lock to read or write to it, which I believe was making my code a lot slower than it could be. To compensate for the reader-writer issues, I have modified the get_tick_count() function and the RTC timer interrupt to attempt to acquire the lock. If the RTC timer interrupt is unable to acquire the lock, it never increments the value held within. Since this interrupt is called every 122 US, there's currently over a 70 percent chance it will acquire it within a few ticks, if even less. The get_tick_count() function returns 0 if it can't acquire a reader lock when it is called. This will not affect sleeping, since the value will appear to never have changed.Core: PCIThe PCI subsystem now uses a linked list instead of a Vec. While both of these allocate memory, the LinkedList structure only allocates memory when an item is added to the list and not when it is created, saving a (potentially) costly memory allocation until it is actually needed. This also creates a performance boost in the PCI enumeration code since adding elements to the list should always occur in O(1) time unless there are other outstanding circumstances.The PCI interface device scanning functions for drivers has been changed. New contributors, when writing drivers, should use pci::find_device() or pci::find_device_x() to locate a device instead of iterating through all devices. The function for retrieving a list of all devices has also been removed, though it may be re-added later. The pci::find_device() function takes a class, subclass, and program interface, and returns an Option, and pci::find_device_x() takes a class, subclass, an array of vendor codes, and an array of device IDs and returns an Option. Both functions are always inlined.Core: memory managerError checking has been added to those functions that did not have them but that called unwrap() anyway.The kernel is now assigned an 8 MB heap, though this is probably overkill and the performance cost is definitely noticeable.Driver updatesKeyboard driverThe keyboard driver now uses 4 statically allocated buffers instead of dynamically allocating memory for every key event. Each buffer contains 512 Option<> items. If the buffer is full, new keys that are received are dropped on the floor. This will make actual UIs difficult to write since the keyboard driver does not (yet) follow the Reader-Writer lock paradigm like the RTC timer does, though I will be updating that sometime soon. However, the remaining changes will make the driver much easier to use when called upon.The driver has been pretty much entirely rewritten to use functional elements instead of handwritten, untested code. During the rewrite I did my est to take advantage of all of Rusts functional capabilities instead of trying to handcraft my own. As an example, instead of a match statement on practically every other line,causing overall messiness, the driver uses functions like zip(), iter_mut() and so on.The keyboard driver now exposes two "truly public" functions, read_key() and read_character(). This will make writing UIs a lot simpler since you do not receive a tuple of values like you did before and instead can filter based on the state o
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system I'm back with some major updates to the OS thus far, with, perhaps, some small performance increases here and there.GeneralThe disk I'm using has been recreated. Using NBD (network block device) technology of the Linux kernel, I was able to mount this QCOW2 disk on /dev/nbd0 and format it as GPT with EXT2. Since EXT2 is ridiculously slow at formatting the disk, the disks size is quite small (though that is also because of git hubs file size limitations). It will be enough for our purposes for now however.I've increased the overall memory requirement of the emulation to 1 GB of RAM. Though I could go much (much) higher, my kernel has yet to require that much RAM yet. Hell, it could operate under 16 MB of RAM just fine.Code qualityLast week I ran clippy on the entire project and have gone through and fixed about 99 percent of its warnings. I have also turned on nearly every lint that the Rust compiler has and set it to 'deny', pretty much forcing myself and contributors to use higher code quality in general. This way, its really obvious when someone contributes something and they use #[allow()] to get around a lint. Originally I wanted to set this to 'forbid', which prevents people from overriding the lints, but the macros my kernel uses (i.e. lazy_static!) caused compilation errors, so I'm stuck with deny for now.Core: interruptsThe RTC timer now uses a reader-writer lock instead of a full mutex lock. For those wh odo't know, a reader-writer lock allows unlimited readers to read the data that the lock is protecting, but to write to it exclusive acquisition is needed. A full mutex lock, on the other hand, requires a caller to gain exclusive access to the lock to read or write to it, which I believe was making my code a lot slower than it could be. To compensate for the reader-writer issues, I have modified the get_tick_count() function and the RTC timer interrupt to attempt to acquire the lock. If the RTC timer interrupt is unable to acquire the lock, it never increments the value held within. Since this interrupt is called every 122 US, there's currently over a 70 percent chance it will acquire it within a few ticks, if even less. The get_tick_count() function returns 0 if it can't acquire a reader lock when it is called. This will not affect sleeping, since the value will appear to never have changed.Core: PCIThe PCI subsystem now uses a linked list instead of a Vec. While both of these allocate memory, the LinkedList structure only allocates memory when an item is added to the list and not when it is created, saving a (potentially) costly memory allocation until it is actually needed. This also creates a performance boost in the PCI enumeration code since adding elements to the list should always occur in O(1) time unless there are other outstanding circumstances.The PCI interface device scanning functions for drivers has been changed. New contributors, when writing drivers, should use pci::find_device() or pci::find_device_x() to locate a device instead of iterating through all devices. The function for retrieving a list of all devices has also been removed, though it may be re-added later. The pci::find_device() function takes a class, subclass, and program interface, and returns an Option, and pci::find_device_x() takes a class, subclass, an array of vendor codes, and an array of device IDs and returns an Option. Both functions are always inlined.Core: memory managerError checking has been added to those functions that did not have them but that called unwrap() anyway.The kernel is now assigned an 8 MB heap, though this is probably overkill and the performance cost is definitely noticeable.Driver updatesKeyboard driverThe keyboard driver now uses 4 statically allocated buffers instead of dynamically allocating memory for every key event. Each buffer contains 512 Option<> items. If the buffer is full, new keys that are received are dropped on the floor. This will make actual UIs difficult to write since the keyboard driver does not (yet) follow the Reader-Writer lock paradigm like the RTC timer does, though I will be updating that sometime soon. However, the remaining changes will make the driver much easier to use when called upon.The driver has been pretty much entirely rewritten to use functional elements instead of handwritten, untested code. During the rewrite I did my est to take advantage of all of Rusts functional capabilities instead of trying to handcraft my own. As an example, instead of a match statement on practically every other line,causing overall messiness, the driver uses functions like zip(), iter_mut() and so on.The keyboard driver now exposes two "truly public" functions, read_key() and read_character(). This will make writing UIs a lot simpler since you do not receive a tuple of values like you did before and instead can filter based on the state o
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system @19, if you mean class codes, subclass codes and program interfaces, all of this is not only available in the PCI database but is specified in technical datasheets and specifications. It has to be; if it wasn't, an OS would not be able to know what's what. URL: https://forum.audiogames.net/post/476867/#p476867 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system @19 these are chip numbers which help you interact with the hardware. URL: https://forum.audiogames.net/post/476854/#p476854 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system Where did you get the specs from? How you know that some hex numbers are functions, and so on? URL: https://forum.audiogames.net/post/476784/#p476784 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system @17, u32 is unsigned 32-bit int, u16 is unsigned 16-bit int, and so on. Same for i8/16/32/64/128. f32 is a single-precision floating point number while f64 is a double-precision floating point number. URL: https://forum.audiogames.net/post/476755/#p476755 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system That code is perfectly readable, I must say @Ethin. I understand 80, 90% of it. I am not sure about U32, though. URL: https://forum.audiogames.net/post/476751/#p476751 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system @15, and I have done that. My PCI code is available at https://github.com/ethindp/kernel/blob/ … src/pci.rs. URL: https://forum.audiogames.net/post/476498/#p476498 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system @13 you are right.the thing is, for sata devices you need to implement pci first.it's specifications are available online, and even you can find it on osdev wiki. URL: https://forum.audiogames.net/post/476495/#p476495 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system Sorry if this doesn’t help, but I found this Hopefully it can help youhttps://rust-embedded.github.io/book/intro URL: https://forum.audiogames.net/post/476429/#p476429 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system @12, trust me, I've used that wiki quite a bit -- that's how I got PCI enumeration working. Befoe I can even read FSes though I need to be able to read disk sectors, which I'm working on right now. URL: https://forum.audiogames.net/post/476321/#p476321 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system the thing about disk io is you need to read them in inodes and then allocate memory for your filesthen when a process calls for example read() with a file* object, you will return the allocated bytes to them.the thing is, you need a kind of structure for each of the file-systems that you want to implement.checkout here URL: https://forum.audiogames.net/post/476319/#p476319 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system @10, yes, I have a crate called spin which implements spinlocks for me (though I'll probably give 'em a shot sometime since I've never implemented them before). I'm not really sure how to get Disk IO working. If I read the HBA port into a struct, I get the appropriate SATA signature (0x010). If I read it directly with MMIO calls that I've written in my kernel, I get 0x1130101. I'm thinking about making the entire thing use the Volatile crate and then using volatile reads and writes to fix the current problem I'm having, but that will get really, really messy.My current problem is this: I rebase the port to 0x40. I then try to ask the controller to read the first sector of the disk (I'm just looking for a boot signature, 0x55 0xAA). However, I always get nothing back. Kinda confused. URL: https://forum.audiogames.net/post/476255/#p476255 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system since I don't work with rust, I can't say that much about it.but, you should implement spinlocks at first if rust requires it.as for the debugging,, I was using bochs to debug my os and didn't try qemu, though it may seem great given that it supports the emulation of many processors such as arm. URL: https://forum.audiogames.net/post/476167/#p476167 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system since I don't work with rust, I can't say that much about it.but, you should implement spinlocks at first if rust requires it. URL: https://forum.audiogames.net/post/476167/#p476167 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system @8:1) I'm only trying to read sectors from the AHCI disk at the moment; I don't care about FSes right now.2) Debugging is much easier when you've got QEMU with its GDB stub (though its still a pain sometimes).3) DMA/Spinlocks/IPC will come much, much later. I don't even have SMP yet! (Though my kernel does use spinlocks because rust demands it of me.)4) Yep, going with ELF was my original idea anyway. URL: https://forum.audiogames.net/post/476149/#p476149 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system hi,I wish the best of luck to you.now my words for such projects:a while ago, I wrote an os in C, and I left that off. (just I wanted to learn).now for disk IO, you need to learn more about lba, chs, different filesystems like fat32, ntfs etc.also, debugging is a pain in the ass when you don't have a screen reader onn it, and in the boot time (because of these I gave up debugging it).also, consider things like DMA, spin locks, IPC, etc.and guys if you want to learn more about OS development, minix is a good thing (people who have never coded by themselves and tried to clone each and every game just ignore this,, you can't compile, and then clone it).also, for executable stuff, I recommend you to use the ELF format (the specs are available everywhere and so much code examples are available for it).things like a c-library implementation (stdio and so on) should be implemented as well.at last, I didn't get your code (since I don't know so much about coding with rust) URL: https://forum.audiogames.net/post/476064/#p476064 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system @6, trust me, I know. @the rest of you, Don't expect anything super-ultra-awesome any time soon -- an OS is nothing easy to create, I assure you. And don't even think about cloning one, either -- that's just... incredibly hard, even impossible if you don't know what your doing. I do encourage people to help though -- I don't have much experience in this area either, and am learning via other code examples and online guides.Disk IO is especially being a pain; I get the feeling I'm going to have to over-use the Volatile crate all over the place, which will make my code downright disgusting to read. (Then again, code for an OS can't exactly be super-pleasant to read anyway...) URL: https://forum.audiogames.net/post/475892/#p475892 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system Hi,Here's what I think is going to happen, and I mean this in the best possible way, no hard feelings. In fact, completely the opposite. I'm excited about this project.Once again, to repeat: I'm excited about this project.I do have a feeling that this is going to take quite some time to get off the ground. I would not be surprised if it will take, even, years, and people need to know that. Heck, I would not be surprised if Ethin already knows this. This will take patience and this is probably going to be a challenge to complete, but I am interested to see where this goes. URL: https://forum.audiogames.net/post/475873/#p475873 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system Oh I knowit is. I have read the tutorial that you derrived from and I understand a lot of it. It's not that hard! Good luck with the Disk IO! BTW you never know where your work leads you URL: https://forum.audiogames.net/post/475172/#p475172 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system @2-3, thanks for the words of encouragement! I hope I can get disk IO working but its a pain! URL: https://forum.audiogames.net/post/475166/#p475166 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
2019-11-10
Thread
AudioGames . net Forum — Developers room : giorgi elbaqidze via Audiogames-reflector
Re: My free and open-source hobby operating system wow dude! that's completely! completely ausumn thingy! wish you good luck! URL: https://forum.audiogames.net/post/475010/#p475010 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
Re: My free and open-source hobby operating system
Re: My free and open-source hobby operating system Oh man, that's awesome! It's bad I am that stupid lol URL: https://forum.audiogames.net/post/474993/#p474993 -- Audiogames-reflector mailing list Audiogames-reflector@sabahattin-gucukoglu.com https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector