Get One

Handy Board FAQ Answers: “icb”

IC won't load my ICB files.

Please note one big GOTCHA with ICB files. On the MS-DOS platform (with both the freeware v2.853 and commercial 3.1 beta 4) version of Interactive C, the ICB files must have Unix-style line termination.

Here is the explanation. ICB files are text files, and in a text file, the Mac, Unix, and MS-DOS file systems each have a different way of specifying the end of each text line. On the Mac, a ctrl-M indicates the end of line. On Unix, it's a ctrl-J. On the PC, it's a ctrl-M followed by a ctrl-J.

On the MS-DOS computer platform, if you use Newton Lab's web-based ICB assembler, or if you download an ICB file from an FTP server, when you save the resulting ICB file it will undoubtedly create a normal MS-DOS text file, with ctrl-M + ctrl-J linefeeds. YOU MUST EDIT THIS FILE AND REMOVE ALL OF THE CTRL-M's. Originally, ctrl-J meant line feed and ctrl-M meant carriage return (think of a TeleType machine). So on MS-DOS, when you remove the ctrl-M's you get files where each new line starts where the last one ended in terms of screen column. THIS WILL LOOK WRONG BUT IT IS WHAT THE MS-DOS INTERACTIVE C VERSIONS REQUIRE.

On the Mac and Unix platforms, the IC accepts the corresponding native text file format. But the MS-DOS and Windows versions of IC require the CTRL-M's to be edited out of ICB files.

Remi Desrosiers contributed a DOS utility to automatically strip out the CTRL-M's. It's called i2u.exe (IBM to Unix). Please make sure to save as source so it gets downloaded as a binary file.

(Last updated 2000-09-27)


Back to FAQ Index