DOS compiler wiki page: please review

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

DOS compiler wiki page: please review

Reinier Olislagers
I decided to start a page for the DOS compiler - as more details become
available we can hopefully collect them there.

As usual: additions/corrections welcome, especially by Nikolay ;) - I've
added some statements with question marks that I'm not sure about.
http://wiki.lazarus.freepascal.org/DOS

Thanks,
Reinier (who's very keen to get another fairly simple cross compiler
working using fpcup :) )
_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: DOS compiler wiki page: please review

Nikolay Nikolov-3
On 09/27/2013 09:53 AM, Reinier Olislagers wrote:
> I decided to start a page for the DOS compiler - as more details become
> available we can hopefully collect them there.
>
> As usual: additions/corrections welcome, especially by Nikolay ;) - I've
> added some statements with question marks that I'm not sure about.
> http://wiki.lazarus.freepascal.org/DOS
Nice. :)

As you might have seen, I've already started adding information to this
page.

Nikolay
_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: DOS compiler wiki page: please review

Reinier Olislagers
On 27/09/2013 13:46, Nikolay Nikolov wrote:
> On 09/27/2013 09:53 AM, Reinier Olislagers wrote:
>> I decided to start a page for the DOS compiler - as more details become
<snip>
>> http://wiki.lazarus.freepascal.org/DOS
> Nice. :)
>
> As you might have seen, I've already started adding information to this
> page.

Yes, thanks Nikolay!
_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: DOS compiler wiki page: please review

greim
Hi,

writing a 8086 version of fpc is not so strange as some may think!
There are still some 80186 processors around running in embedded
systems! These architecture is certified for some applications in
industrial and avionik controll.

A good survey over most  #186 derivates you may find at:

http://www.cpushack.com/2013/01/12/the-intel-80186-gets-turbocharged-vautomation-turbo186/


For example

http://www.lantronix.com/device-networking/embedded-device-servers/dstni-lx_dstni-ex.html

or

http://www.lantronix.com/device-networking/embedded-device-servers/xchip.html

and used for example in this embedded computer:

http://www.beck-ipc.com/en/products/sc2x/index.asp

This processors are using an own OS called RTOS which is quite nice.


BUT
most of these prcessors are using an extended addressing for using more
then 640 kByte, with more address lines. So "old " 8086 programms can
only run if they are using only a "small memory" option. With RTOS also
the header of the EXE files is slightly modified.
So Borland Pacal 7.01 programs can only runn after some ugly patching.
Frank v. Münchow-Pohl has written a small patch program which is
decribed here:
http://forum.beck-ipc.com/viewtopic.php?f=7&t=824

Until 3 years ago the AMD 186 was still available, which have been real
80186, but this processor is not produced anymore as far as i know.

So running Pascal programs on these kind of systems is not realy
possible anymore. The only option afaik is using teh Paradigm C++
compiler:
http://www.devtools.com/pcpp/compiler.htm
which is quite expensive, an as i was told not so reliable.


Here you will see a list of processirs they are supporting, so i think
there is is still a market for the 80(1)86

http://www.devtools.com/pcpp/processors.htm

So my wish list:
fpc for 80186, supporting the new extended addressing and writing the
header files for RTOS (see
http://www.beck-ipc.com/en/products/rtos/index.asp) incl. a FPU emulation !

Anny comment welcome.

Markus


_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: DOS compiler wiki page: please review

Nikolay Nikolov-3
On 10/05/2013 03:07 PM, greim wrote:

> Hi,
>
> writing a 8086 version of fpc is not so strange as some may think!
> There are still some 80186 processors around running in embedded
> systems! These architecture is certified for some applications in
> industrial and avionik controll.
>
> ....
>
> So my wish list:
> fpc for 80186, supporting the new extended addressing and writing the
> header files for RTOS (see
> http://www.beck-ipc.com/en/products/rtos/index.asp) incl. a FPU
> emulation !
 From what I read from the links you posted, the extended addressing
seems to be just like the regular real mode, except that segments are
spaced not 16, but 256 bytes apart, is that correct? If that's the case,
it should be easy to support - it's just a matter of writing the RTL for
the new OS and using the appropriate linker. FPC for i8086 produces
object files in the standard ROMF file format, they just use the
extension .o, instead of .obj. Note that FPC currently only supports the
tiny, small and medium memory models. Compact, large and huge are
planned, but not started yet. But you can try writing an RTL for RTOS
with the current memory models. In principle, it shouldn't be any harder
than porting the compiler to any new OS, where the CPU is already
supported. And when I implement the compact/large/huge memory models,
the RTOS RTL will have to be adapted to support them. Most likely, the
far heap manager (which doesn't exist yet) will have to be adapted to
support the different spacing between the segments. As for FPU
emulation, it is also on my TODO list :)

Nikolay
_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: DOS compiler wiki page: please review

greim
Am 06.10.2013 22:37, schrieb Nikolay Nikolov:

> On 10/05/2013 03:07 PM, greim wrote:
>> Hi,
>>
>> writing a 8086 version of fpc is not so strange as some may think!
>> There are still some 80186 processors around running in embedded
>> systems! These architecture is certified for some applications in
>> industrial and avionik controll.
>>
>> ....
>>
>> So my wish list:
>> fpc for 80186, supporting the new extended addressing and writing the
>> header files for RTOS (see
>> http://www.beck-ipc.com/en/products/rtos/index.asp) incl. a FPU
>> emulation !
>  From what I read from the links you posted, the extended addressing
> seems to be just like the regular real mode, except that segments are
> spaced not 16, but 256 bytes apart, is that correct?

As far as i personally understand, yes.


If that's the case,
> it should be easy to support - it's just a matter of writing the RTL for
> the new OS and using the appropriate linker.

RTOS is a pimped IBM/MS-DOS. So standard functions like file i/o etc.
are identical. Most of the DOS programs are running also on RTOS.


  FPC for i8086 produces
> object files in the standard ROMF file format, they just use the
> extension .o, instead of .obj. Note that FPC currently only supports the
> tiny, small and medium memory models. Compact, large and huge are
> planned, but not started yet. But you can try writing an RTL for RTOS
> with the current memory models. In principle, it shouldn't be any harder
> than porting the compiler to any new OS, where the CPU is already
> supported.

Maybe its enough to modify the linker for this special 80186, without
touching the 8086 compiler?
This was not possible for the Borland compiler, because there are no
.obj files.

  And when I implement the compact/large/huge memory models,
> the RTOS RTL will have to be adapted to support them. Most likely, the
> far heap manager (which doesn't exist yet) will have to be adapted to
> support the different spacing between the segments. As for FPU
> emulation, it is also on my TODO list :)

First of all i will try to run a small "Hallo World" on the RTOS 24 bit
machine !

Thanks

Markus


>
> Nikolay
> _______________________________________________
> fpc-pascal maillist  -  [hidden email]
> http://lists.freepascal.org/mailman/listinfo/fpc-pascal
>

_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal