Newcomer questions Hi all
I dont know if I am in the right place, so please,, after reading my questions , tell me so (politely please)
I build computerized machines, that currently run in Win95 Dos.
The computers are industrial motherboards plugged into backplanes together with I/O boards to talk to my inputs an outputs. It uses a keypad or touchscreen for the operator.
Most of the code is written in Masm and Pds7.1 Basic.
I have been writing in asm since the first 8088, although never for protected mode. The programs (although very fast and efficient) look very "Dos".
Now I am under pressure to produce a GUI based machine. At first I looked into GUI addon's for 16bit dos. But soon concluded that my "very fast" code would become "very slow" code by continually writing graphic screens. Then I started looking into FreeBasic, but because I dont want to run machines with Windows, the Dos support is very patchy when it comes to GUI.
A couple of weeks ago I came onto this site (I got account activation this morning ???) It appears there is no document to describe what KolibriOS is/can do. I have lived a sheltered (software) life, so please be gentle. :)
Now for the questions.
1. Can I boot from a CFC on the IDE (it looks like a hard disk) ?
I saw some detail on the Usb booting, but not CFC. Typically the smallest these days is 256mB, but I use less than 1mB.
2. If I want to run only one (1) program what is the minimum configuration ? (is it even possible)
there is no sound requirement, mouse is touchscreen, CFC is disk, ps2 type keypad
3. It looks like you can draw windows (and Buttons ?) with direct system calls on KolibriOS, so can I make the front end of my program a HMI (human machine interface) and run only one task. ?
4. There is lots of mention about "MenuetOS" (I probably spelt it wrong)
Is that part of, or is it a seperate system. ?
5. Does the Dos or Bios interupt service still exist, or is KolibriOS masking the lot ?
With those questions answered I can decide to start testing (or not).
Many thanks for your patience.
Regards
from Wagga Wagga in Australia.
mike.dld- 08-20-2007
Re: Newcomer questions 1. Can I boot from a CFC on the IDE (it looks like a hard disk) ?
I saw some detail on the Usb booting, but not CFC. Typically the smallest these days is 256mB, but I use less than 1mB.
I didn't get what does that CFC mean. Could you provide some more info? There's nothing valuable in Wikipedia (http://en.wikipedia.org/wiki/CFC).
2. If I want to run only one (1) program what is the minimum configuration ? (is it even possible)
there is no sound requirement, mouse is touchscreen, CFC is disk, ps2 type keypad
In minimum configuration, there could be 2 tasks running: OS task and your program task. System automatically runs program called "LAUNCHER" at startup, which then may run some other programs, and may not.
3. It looks like you can draw windows (and Buttons ?) with direct system calls on KolibriOS, so can I make the front end of my program a HMI (human machine interface) and run only one task. ?
You can, but since you've been writing in 16-bit assembly before (as I get it), you'll need to change your code to use 32-bit addressing (this means a bit different addressing modes without segments etc.).
4. There is lots of mention about "MenuetOS" (I probably spelt it wrong)
Is that part of, or is it a seperate system. ?
Kolibri is based on Menuet (yes, you spelled it correctly), but is no more a part of it. It is now a separate OS with separate targets.
5. Does the Dos or Bios interupt service still exist, or is KolibriOS masking the lot ?
Kolibri masks all the DOS/BIOS interrupts (there's no V86 mode implemented yet and I can't say when it will be available) since it works in 32-bit protected mode. The only interrupt you have is 0x40, giving you the way to call system functions. If you can help us implementing V86, this would be quite helpful.
Hope I helped a bit.
Dinosaur- 08-20-2007
Mike.dld, many thanks for your prompt reply.
CFC = Compact Flash Card. There is a passive adapter that simply plugs into HDD ribbon, and looks like a hard disk.
The BIOS is set up to an equivalent hard disk or Auto.
Two final questions.
1. Were the demo screens created using only KolibriOS calls, or was there third party software involved ?
2. If I assemble (or compile) code, which does not make system calls (such as screen print) will it run as per normal x86 machine. ?
Regards
Solidus117- 08-21-2007
You may be talking about a CF-IDE adapter. If the card is FAT32 formatted, then this'll work.
1. Were the demo screens created using only KolibriOS calls, or was there third party software involved ?
Edit: I think so.
2. If I assemble (or compile) code, which does not make system calls (such as screen print) will it run as per normal x86 machine. ?
Yes, but then you'd be breaking the processing cycle (ie Input -> Process -> Output). As addressed by Mike, it'd be 32-bit instructions.
mike.dld- 08-21-2007
I may now duplicate Solidus117's post a bit, but here're my answers.
First, yes, Kolibri supports booting from either FAT16, FAT32 or NTFS formatted partition, if it really looks like an ordinary IDE device.
As for screenshots, there's a system call to get pixel color from specified coordinates, and another one to get current screen dimensions, so you may use them to create screenshots.
In Menuet, there was an ability to access raw VESA framebuffer memory using GS-relative addressing. Don't remember if this is still present in Kolibri since it's not a good way of working with graphics.
There's also a program which makes screenshots, called "SCRSHOOT", allowing you to save (to specified location) simple screenshots as well as create several screenshots with set up delays automatically till you stop it.
Another way is to use KlbrInWin - emulator able to run Kolibri programs in Windows, or differens x86 emulators (such as Qemu, Bochs, VMware, Parallels etc.) running on different platforms like Windows, Linux, FreeBSD etc.
hidnplayr- 08-21-2007
If you are looking for a 32bit dos, you might be interessed in DexOS (www.dex4u.com)
It's a single tasking os and has vesa capabilities
If you need some more info on kolibri, you're welcome to join #gerneal on irc.kolibrios.org
Mario79- 08-21-2007
I want to add to said that be emulated must IDE hard disk in mode LBA.
The little bit out-of-date description you can read on a site:
www.kolibri.hut1.ru/info_e.htm
Dinosaur- 08-22-2007
Hi all
Many thanks for the replies. (didnt get an email to say replies received ??)
The LBA is not supported for CFC so that may be an obstacle.
But I havent got a clear picture yet.
Is it true that;
only applications using the int 40h can run on KolibriOS, and applications calling system functions any other way will fail ?
I wanted to write the logic of application in FreeBasic(DOS), but all the screen printing, disk access etc via KolibriOS. Discussion on the FreeBasic site: http://www.freebasic.net/forum/viewtopic.php?p=80064#80064
seems to suggest that regardless of how I compile , there will be "dos" calls.
Can KolibriOS handle this. ?
Sorry for asking what may appear stupid questions, but I rather know now then after starting development.
Dex- 08-22-2007
No, what you are trying to do will not work, without alot of work and much more understanding of the way KolibriOS works.
Your best bet is to use this basic interpeter/compiler for menuetOS, but should be OK with KolibriOS.
http://www.menuetos.org/appl/Basic.zip
To me for your job ( as in run a single program with GUI support) your best chose would be the OS sugested above ( i do not want to spam ) or why do you not use Dos with DOS Protected Mode Interface (DPMI) or unrealmode etc.
Remember in KolibriOS you will be in pmode and you can not use any Dos or BIOS ints and KolibriOS is a multi-tasking OS.
Also if you give some more pointer to what you want the GUI + program to do may help.
Dinosaur- 08-22-2007
Dex, thank you for that.
The implementation of a Gui in dos (16 bit or 32 bit) is the aim.
Lots of Gui implementations in Win. The ones that are for dos are either in C++ or are complicated and expect you to use script language of their design.
I have spent months looking for the right solution.(even prepared to pay for it).
Regardless, thank you, and your fellow posters for the help in clarifying this.
Edit: Have used Unreal in 16 bit dos for years.
Regards
Forumer™ is Voted #1 Free Forum Hosting provider
Build your own community today with the largest message board hosting company.