Page 1 of 2

TBOS 1.1.0

Posted: Tue Jun 02, 2009 9:40 pm
by Troy Martin
Image Titanium Bonfire Operating System 1.1.0 Image

Quick list of Major Changes (1.1.0):
  • hash 0.4.0 released with load command data removed and a borked 80x30 text mode introduced
  • normal, miniature panic screen implemented
  • added decimal printing calls and a simplified quote system
  • wrote a quick sysinfo.asm program, requires a 386 or higher, preferably a late 486DX2 or Pentium.
Developers' Notes:
zOMG this release was late. By about... oh, a month and a half. The projected release date was April 18th, and, well, we all know what day it is today. It's freaking June.

I had more plans for 1.1.0 to make it a bigger release, including a simple LFN layer for the FAT12-ness. Honestly? I hate FAT12. It's a b!tch. That's why I wanted to do an abstraction layer so my programs wouldn't have to deal with its evilness and work around it, but I guess either a) time got away from me, or b) I'm just too lazy. Oh, and there are always end-of-year school exams to blame.

Links:
Download: http://code.google.com/p/tbos2/download ... .zip&can=2
Website: http://www.tbos.co.nr/
Blog: http://tinyurl.com/tbproject

Cheezy Thanks:
Thanks for reading this post and hopefully downloading and testing TBOS! If and when you find bugs, report them here or on the blog (or both) and I'll have them fixed for 1.1.1.

-- Troy

Re: TBOS 1.1.0

Posted: Wed Jun 03, 2009 1:41 am
by M-Saunders
Troy Martin wrote:I hate FAT12. It's a b!tch.
No it isn't Troy. You hate it because you don't understand it. You don't understand it because all your FAT12 code is copied and pasted from elsewhere, and you haven't learnt assembly sufficiently to understand the code. Your problems getting a very simple text file viewer to work show that you need to learn a lot more assembly.

FAT12 is a very limited filesystem, but it's also fundamentally very simple. A long filename scheme like TRANS.TBL is easy to implement. Let's just put this next to TCP/IP, multi-tasking, a text editor, a BASIC interpreter, a Tetris clone, a C cross-compiler, directory support, and all the other things you've talked about writing over the last year that have never materialised :-)

Seriously, don't blame stuff and call it a "b!tch" just because you don't understand it. Get your assembly skills to the level where you can write simple programs before tackling larger projects (without copying and pasting loads of code) and have a more informed opinion.

M

Re: TBOS 1.1.0

Posted: Wed Jun 03, 2009 8:50 am
by Troy Martin
Ye gods.

I meant because it's limited. I understand it well enough, thank you very much.
M-Saunders wrote:A long filename scheme like TRANS.TBL is easy to implement.
Yes. I know.

On a side note, I'm probably discontinuing this incarnation of TBOS in favour of a protected-mode one written in my native language, C, anyways, as I prefer C to assembly and would like to spend my time working on my own crap.

Re: TBOS 1.1.0

Posted: Wed Jun 03, 2009 9:45 am
by M-Saunders
Troy Martin wrote:I meant because it's limited.
But how does that matter for a small, real mode floppy-disk OS? What do you need -- journalling? Variable cluster sizes? 8 exabyte file support? :-) FAT12 is perfectly fine in this case, and not a "b!tch". If you're really bothered about long filenames then learn assembly properly and add a TRANS.TBL-like implementation -- it'd be an afternoon job.
Troy Martin wrote:I understand it well enough, thank you very much.
That was quick! The last I saw, you were talking about adding directory support and then gave up on it and chucked it on the pile of TroyProjects :-)

M

Re: TBOS 1.1.0

Posted: Wed Jun 03, 2009 11:15 am
by 01000101
'Grats on the release!
Don't let M-Saunders ruin it as he obviously hasn't had his coffee.

I thought you were still going for 186 compatibility?

Re: TBOS 1.1.0

Posted: Wed Jun 03, 2009 12:05 pm
by earlz
Troy Martin wrote: On a side note, I'm probably discontinuing this incarnation of TBOS in favour of a protected-mode one written in my native language, C, anyways, as I prefer C to assembly and would like to spend my time working on my own crap.
you do know their is a C compiler out there that can compile for 8086 and use _far and all that crap.. I think it might have been tinyCC

Re: TBOS 1.1.0

Posted: Wed Jun 03, 2009 2:03 pm
by Troy Martin
01000101 wrote:I thought you were still going for 186 compatibility?
Ahh, that's the OS itself that's 186 compatible, I never said anything about the programs :)
earlz wrote:
Troy Martin wrote: On a side note, I'm probably discontinuing this incarnation of TBOS in favour of a protected-mode one written in my native language, C, anyways, as I prefer C to assembly and would like to spend my time working on my own crap.
you do know their is a C compiler out there that can compile for 8086 and use _far and all that crap.. I think it might have been tinyCC
Yeah, but I want to try my hand at doing my own drivers and 64KB segmentation is limited. Oh, and the BIOS is often hack-filled and buggy, so PIO drivers are way better.

Re: TBOS 1.1.0

Posted: Wed Jun 03, 2009 3:00 pm
by M-Saunders
01000101 wrote:Don't let M-Saunders ruin it as he obviously hasn't had his coffee.
Beer more like :-) Seriously, I'm only posting because TBOS is mostly code that I wrote* (MikeOS bootloader, memory map, FAT12 code, IVT code, system calls etc). Indeed, Troy himself described TBOS as "a bad MikeOS clone". For months I've been trying to give ideas and advice, but clearly I fail and Troy will perpetually dream up grand ideas, ditch them, then copy-and-paste code and not learn anything en route. But I tried :-)

Mike

*(MikeOS is BSD licensed so that's fine, but nobody learns much from just copying and pasting.)

Re: TBOS 1.1.0

Posted: Wed Jun 03, 2009 3:13 pm
by Troy Martin
I'm switching to C to rid myself of MikeOS code (which, Mike, your figures have been greatly exaggerated, the only system calls of yours in TBOS are the FAT ones and print_dec_word (apparently PD code however). I believe that makes it only 27 or so KB of source that is MikeOS.

And yes, I do admit, I do have MikeOS code in TBOS. But look at this:
M-Saunders wrote:MikeOS bootloader
Isn't that a public domain bootloader?
M-Saunders wrote:memory map
Heh, it works. But it is limiting and it's another reason I like my OS in C. :)
M-Saunders wrote:IVT code
I never got around to changing it, and it was implemented when I was a n00b.
M-Saunders wrote:etc
I can't think of anything else.
M-Saunders wrote:But I tried :-)
And it was an experience. But TBOS16 is soon to be history, with only minor patches and revisions. TBOS32 is the future for the Titanium Bonfire Operating System, and it shall proceed as planned.

*goes to look up FDC commands in the indispensable PC hardware book*

Re: TBOS 1.1.0

Posted: Wed Jun 03, 2009 3:48 pm
by M-Saunders
Meh. Your string/input system calls are instruction-by-instruction identical to earlier MikeOS releases and have exactly the same bugs and limitations in the same places. I rewrote the bootloader in 2.0. Up to you if you want to pretend you wrote them from scratch. Your OS is a major copy-and-paste effort, and TBOS32, looking at the screen, keyboard, common functions etc. are directly from JamesM/Bkerndev too.

There's nothing wrong with re-using code, and I may sound like a prick to some forum regulars here. But after a year of hearing countless plans and grand schemes Troy, yet all you do is copy and paste code, I've given up trying to help you with ideas and pointers. You're clearly not willing to learn despite my efforts and that's why none of the big ideas you've dreamt up have become actual code, and a mere text viewer is still beyond your grasp. I tried but you won't listen. Good luck with the next 100 TroyProjects :-)

M

Re: TBOS 1.1.0

Posted: Wed Jun 03, 2009 4:10 pm
by Troy Martin
M-Saunders wrote:and TBOS32, looking at the screen, keyboard, common functions etc. are directly from JamesM/Bkerndev too.
I intend to only use those as a base, writing everything else from scratch using google and books as references. Granted, I may borrow some Ethernet driver code from 01000101, but that's a long way off. First I need to fix the triple fault in the timer interrupt :D

Re: TBOS 1.1.0

Posted: Wed Jun 03, 2009 4:14 pm
by neon
Im not sure, but if you want to stay 16 bit, you -might- be able to use 16 bit C. (I emphasize "might" as i dont know of anyone who tried it.) It sounds like you are moving to use 32 bit protected mode though. Keep us updated :D

I do have to say that I am impressed with your post, however. It has a nice professional feel to it imho.

(*edit: I am glad that you are no longer taking code. This is actually one of the reasons I am not releasing any of mine...so no one takes it as their own)

Re: TBOS 1.1.0

Posted: Wed Jun 03, 2009 4:22 pm
by Troy Martin
neon wrote:Im not sure, but if you want to stay 16 bit, you -might- be able to use 16 bit C. (I emphasize "might" as i dont know of anyone who tried it.) It sounds like you are moving to use 32 bit protected mode though. Keep us updated :D
The whole point of my moving to pmode is removing the BIOS-ity and the 4GB of theoretical memory to access without paging/segmentation :) And I likes me GCC/Linux. :mrgreen:
I do have to say that I am impressed with your post, however. It has a nice professional feel to it imho.
Hey, thanks! I was going for the professional thing. I find that professional announcement posts attract more people than a "hai thar check out mi OS, thxbi" written in twenty seconds.

Re: TBOS 1.1.0

Posted: Thu Jun 04, 2009 4:18 am
by Love4Boobies
Tell us more about the neat logo :)

Re: TBOS 1.1.0

Posted: Thu Jun 04, 2009 8:37 am
by Troy Martin
Hehe, okay, shades of grey and black run through Photoshop's blue glow layer style and the opacity thing :mrgreen: