Page 1 of 2
What form of utilities would you find useful for OS dev?
Posted: Fri Mar 28, 2008 6:50 pm
by AaronMiller
Just as the title says I'm wondering what kind of utilities you guys would find useful for OS development. I'm gonna be making several utilities for myself to help speed up development and make it much more enjoyable.
I've even *thought* about making a linker and the such just so I can support my own formats -- but thats too much of a project to make OS dev more enjoyable (for now).
Anyways, I'm interested. Currently I'm making a menu program which makes it easy for others to choose what to build and the such (Its a graphical program and is very pleasant to look at if I do say so myself). I'll also be making something to parse through simple scripts to help building portions of the OS (Ex: The kernel, built-in drivers, the shell, etc).
NOTE: These utilities would be Windows NT based utilities - most likely making use of the Windows GDI. I'll post source code IF anyone wishes to port the software over to Linux.
Cheers,
-naota
Posted: Fri Mar 28, 2008 7:28 pm
by 01000101
I would personally like an new IDE with customizable linker scripts/makefiles/compilation batchfiles/etc... with sytanx highlighting for ASM and C.
just a thought
Posted: Fri Mar 28, 2008 7:28 pm
by Alboin
What's wrong with just make?
Posted: Fri Mar 28, 2008 7:58 pm
by 01000101
why is there always someone that says "why not just use x" or "x can do that!".... if I cared about 'x', I wouldn't have suggested what I suggested. I obviously don't particularly like 'x' therefore, I asked for a different one.
Posted: Fri Mar 28, 2008 8:05 pm
by jzgriffin
I'd like to see a bit more standardization of build platforms. Perhaps something like Cygwin but just for OSDev? i586-elf and all that. Maybe a cross-platform (GTK? wxWidgets?) text editor with a minimalistic yet powerful user interface so that I don't have to keep both my Notepad- and Vim-fu sharp. Syntax highlighting included, of course - and a way to build & run the OS from within the editor. Just one menu for that.
Posted: Fri Mar 28, 2008 9:45 pm
by AndrewAPrice
Nothing will make me part with my Visual Studio + Visual Assist (when you use it you wonder how you lived without it). When I get my Logitech G15 I'm going to bind the buttons to things like building my OS, creating the disk image, and running the emulator.
Posted: Sat Mar 29, 2008 12:09 am
by piranha
[off topic]Why is it 'visual' everything? Why not...Smelling, or odorous studio? (Actually, I think thats a better name choice)[/off topic]
I once wondered if there was an IDE made specifically for OSdev.
-JL
Posted: Sat Mar 29, 2008 12:43 am
by jzgriffin
There should be an IDE just for OSDev. Cross-platform, of course. It should come with what I mentioned - sources for compilers and assemblers on *NIX, binaries on Windows. I would
pay to have a more powerful means of OSDev on Windows that could also be used on Linux. To me, having the same IDE and tools on both OSes would be a dream come true.
Posted: Sat Mar 29, 2008 1:24 am
by AndrewAPrice
piranha wrote:[off topic]Why is it 'visual' everything? Why not...Smelling, or odorous studio? (Actually, I think thats a better name choice)[/off topic]
I once wondered if there was an IDE made specifically for OSdev.
-JL
I dunno, when you imagine Touch Studio or Audio Studio, Visual Studio sounds like an image or film editing tool.
I once wondered that too, but I eventually concluded I am much more productive using an IDE I am familiar with that I have customised to my liking with my favourite plugins and add-ons that I use for all my other projects.
It is not be everyone's favourite IDE but I find myself most productive and comfortable when using VS and my everyday tools and extensions. Like any IDE, you grow accustomed to it and know how its ins ands outs and how to make it do what you want.
A useful tool I would like is a disk editor that allows me to inject (and overwrite) files into disk images without having to mount them (which I don't mind since I have a shell script doing al lof that for me).
I'm typing this post on my tablet with an onscreen keyboard (I can touch-touch without having to look at the OSK
), it's a
little slower than handwriting (but you make up with it not having to fix incorrect words and punctuation, so overall I find it faster), and about half the speed of typing with a keyboard.
Posted: Sat Mar 29, 2008 2:31 am
by jzgriffin
I find myself being most productive with Vim/GVim. It feels so much more powerful and extensible than other editors, excluding Emacs in the extensibility area. The ideal OSDev IDE would have a lot of emulation modes - Emacs, Visual Studio, Notepad (:-)), Vi(m), TextMate, etc. Maybe a facility for generating a base for a new OS (directory layout, linker script, makefiles, all that general pre-fun muck) 'File->New->Operating System'...now that's something you don't see every day.
Posted: Sat Mar 29, 2008 3:14 am
by inflater
Most productive tools? Notepad, command line and FASM for ASM, or the delphi's IDE for programming Win32 applications (in delphi of course).
Posted: Sat Mar 29, 2008 6:52 pm
by AaronMiller
wxWidgets
That hurts - I'm building my own GUI (similar to that but in my oppinion easier to work with).
About the IDE - A syntax highlighter is something I'd like to make as a gadget for my GUI so that'll be possible once I get the concept down.
On a side note I find my self very productive with Notepad++.
If I made an editor I would allow it to be customizeable, and generally allow you to add emulators and such to run your OS as well as allow you to build ISOs and IMGs or just raw BINs as targets.
In addition, I am working on a BASIC-like language aimed at OS Dev, Applications development, and Game development. Which brings me to my next point -- If you want your OS supported by my BASIC let me know (And provide the proper docs).
I have a lot of work to do and having much more cross-platform abilities for my BASIC would be awsome.
The BASIC is the reason why I was thinking of making a linker (And support my .XEC executable format (Plus the .XBE format)). Though that's quite a bit of work so meanwhile I made a PE2XEC tool to convert a PE to a .XEC file (Still incomplete).
I'd like to see a bit more standardization of build platforms. Perhaps something like Cygwin but just for OSDev? i586-elf and all that. Maybe a cross-platform (GTK? wxWidgets?) text editor with a minimalistic yet powerful user interface so that I don't have to keep both my Notepad- and Vim-fu sharp. Syntax highlighting included, of course - and a way to build & run the OS from within the editor. Just one menu for that.
I'm "installing" Cygwin now actually. I never understood why people liked it (From the looks of it, it's only ports of Linux programs to Windows and provides the STDC library -- but I don't know actually). But I'll see what I can do.
What's wrong with just make?
I don't understand it and have had trouble in the past using it. ALL the software I make is intended for EVERYBODY -- even those just learning to program (If it's development software). Plus it'd be kinda like a programming language with pretty syntax and plugins.
(eventually)
Cheers,
-naota
Posted: Sat Mar 29, 2008 7:31 pm
by Alboin
AaronMiller wrote:What's wrong with just make?
I don't understand it and have had trouble in the past using it. ALL the software I make is intended for EVERYBODY -- even those just learning to program (If it's development software). Plus it'd be kinda like a programming language with pretty syntax and plugins.
(eventually)
You shouldn't make a new tool because you don't understand the old ones. If you don't understand them (and hence 'have had trouble' with them.) you should work towards learning them, finding their faults, and then improving on those however you see fit. No offense intended, but by not doing this, you are probably just going to create an inferior tool that falls into the same pits as make and friends.
Hope I've been more help than not. That was actually my intent with my original comment.
Good Luck.
Posted: Sat Mar 29, 2008 7:52 pm
by jzgriffin
AaronMiller wrote:wxWidgets
That hurts - I'm building my own GUI (similar to that but in my oppinion easier to work with).
You stated that your toolkit made use of Windows GDI. GDI is not cross platform nor native - wxWidgets is. I like applications that look like they should be running on the OS that it's running on, which is why I don't use any antivirus on Windows - none of them use proper, native UIs. I don't even use Java or GTK+ (only when in Gnome because GTK
is the widget toolkit).
If you insist on doing a custom UI, why not consider using SDL. There's a few dependency DLLs (on Windows) but it's not too bad, plus it's portable.
In either case (GDI or SDL), you've likely lost a user before getting one...sorry, but custom UIs are just ugly. Even Firefox's in-page controls under Linux or Mac get under my skin.
Posted: Sun Mar 30, 2008 12:16 pm
by AaronMiller
@Jeremiah Griffin
Windows GDI IS native - It comes with pretty much all versions of Windows. I *was* making a GUI with just GDI for a custom look.
Second, wxWidgets uses the Windows commands for its GUI - as does mine.
@Alboin
I understand - but I'm not making a new tool because I don't understand an old one. I'm making a new tool because I have a use for extra customizeability (If that makes any sense).
Cheers,
-naota