From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,f30febd5e0faf392 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2002-05-22 11:47:23 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!sn-xit-01!sn-post-01!supernews.com!corp.supernews.com!not-for-mail From: "Randy Brukardt" Newsgroups: comp.lang.ada Subject: Re: Ada 95 for DOS Date: Wed, 22 May 2002 13:47:43 -0500 Organization: Posted via Supernews, http://www.supernews.com Message-ID: References: <77864ec9f45765f2740ceac645451f33.86200@mygate.mailgate.org> X-Newsreader: Microsoft Outlook Express 4.72.3612.1700 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3719.2500 X-Complaints-To: newsabuse@supernews.com Xref: archiver1.google.com comp.lang.ada:24538 Date: 2002-05-22T13:47:43-05:00 List-Id: Henrik Quintel wrote in message <77864ec9f45765f2740ceac645451f33.86200@mygate.mailgate.org>... >Hi, >I am looking for a pure DOS Ada compiler. At the moment I work with >GNAT 3.13p NT and with GNAT 3.10 for DOS. But both are 32-bit Compiler. >GNAT 3.10 depends on DJGPP. So it is a 32-Bit Compiler. > >My problem is that I want to handle pointers to locate several positions >in a DOS-BOX under Windows ME. The two compilers, mentioned above fail. Janus/Ada 95 is (still) available for MS-DOS. It also uses a DOS extender (Ergo is included, Pharlap's extender also works if you can find one somewhere). There is a package for converting real-mode addresses to protected-mode addresses you can use in your program, which would allow you to access any memory in the lower 1 megabyte. (There is no way for a program to access specific memory above the first megabyte without convincing the operating system to give it to you, which takes you out of the realm of DOS.) procedure Paragraph_to_Protected_Address (Para : in System.Word; Addr : out System.Address); -- Sets Addr to a protected mode address for the real mode paragraph Para. -- The address can access at least 64K, unless it is at the top -- of the conventional memory area. -- Raises MEMORY_ERROR if an error occurs. This routine uses facilities provided by the DOS Extender. Randy Brukardt R.R. Software, Inc. www.rrsoftware.com