🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.os.msdos.programmer
Article #4920

Re: Romable code with Microsoft C?

#4920
From: Shaun Case
Date: Wed, 27 Feb 1991 22:46
52 lines
3141 bytes
In article <1991Feb22.211530.4528@nntp-server.caltech.edu> josephc@nntp-server.caltech.edu (Simplelogic) writes:
>marty@wuphys.wustl.edu (Marty Olevitch) writes:
>
>>We have an application that runs on a PC from ROM. Up until now, we have
>>been using Aztec C to create the romable code, but now we are thinking of
>>switching to Microsoft C for a number of reasons. Looking over the
>>documentation, there is nothing on creating romable code with MSC. Can it be
>>done?  Is it necessary to buy a separate linker or "locater", or can the MS
>>link program be used?
>
>I have had a similar wish using Borland's products, and I have found that
>there was no way to directly produce rommable code.  A quick call to Borland
>did, however, reveal a name of a company that might help: Paradigm Systems
>(1-800-582-0864, or 1-800-537-5043 to order) in New York.  
>

When I had to design and build a single board 8088 machine with a monitor
in ROM for an engineering class, I used a utility called ROMIZE that
turned turbo C object code into rommable code.  However, it needed
either TASM or MASM, along with exe2bin to make the code.  The utility
was horked off Compu$erv by a classmate, and is PD as far as I know.
I used it with great success.  The only restrictions were:

1)  You had to compile to .obj code using the right memory model
    (small, I think, it's been a while)
2)  You couldn't use any library routines that called BIOS services
    or did PC dependent stuff.  Thus, you couldn't use floating
    point, printf(), file io, console io, etc, but you could use things
    like isalpha(), casts, arrays, etc.  I wasn't really sure in some
    cases what used BIOS calls and what didn't, so I ended up writing
    a lot of small functions like str_to_hex(), itoa(), etc.  It was
    pretty easy, and a lot of fun, and now I have a nice library of
    (probably inefficient) routines for bonehead compilers that don't
    support things like strstr().  

The utility had its own c0 startup code, which was assembly, with
source.  You could change it if you wanted to -- I think I had to
make a small patch to it.  

Anyhow, I still have the package, and would be willing to mail
it to a few people, if you are interested.  I'd really like it if 
someone could find an FTP site for it, or could put it on Simtel.
It's pretty short.

Shaun.


-- 
Shaun Case:  shaunc@gold.gvg.tek.com  or  atman%ecst.csuchico.edu@RELAY.CS.NET 
 or Shaun Case of 1:119/666.0 (Fidonet)  or  1@9651 (WWIVnet)
---
A bullet in the Bush is worth two in the hand.
Technical Details
Message-ID: <2006@gold.gvg.tek.com>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uunet!zephyr.ens.tek.com!gvgpsa!gold.gvg.tek.com!shaunc
References: <1991Feb22.155750.1404@wuphys.wustl.edu> <1991Feb22.211530.4528@nntp-server.caltech.edu>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uunet!zephyr.ens.tek.com!gvgpsa!gold.gvg.tek.com!shaunc
From: shaunc@gold.gvg.tek.com (Shaun Case)
Newsgroups: comp.os.msdos.programmer,comp.sys.ibm.pc.hardware
Subject: Re: Romable code with Microsoft C?
Message-ID: <2006@gold.gvg.tek.com>
Date: 27 Feb 91 22:46:19 GMT
References: <1991Feb22.155750.1404@wuphys.wustl.edu> <1991Feb22.211530.4528@nntp-server.caltech.edu>
Followup-To: comp.os.msdos.programmer
Organization: Grass Valley Group, Grass Valley, CA
Lines: 52