• Please review our updated Terms and Rules here

Manuals for Microsoft Visual C 1.52?

orac81

Experienced Member
Joined
Mar 21, 2024
Messages
190
I was looking for the manuals for Microsoft Visual C 1.52 (the last 16 bit version) in a modern format, ie pdf. The original CD ISO is available as a download, ie:


and that has the manual included as an sort of linked book/help, but not in a format that you can read on a modern PC, you have to run the old 16 bit IDE.

Has anyone figured out a way to convert/extract this document?

Failing that, are the manuals for MS C 6.0 around?

Ideas welcome..
 
Thanks that link helped. I was trying to find details on the MSDOS side of MSVC 1.52, those manuals mainly related to the Win16 side. While the MSVC1.0 manuals cover the CLI options, the MSC 7.0 manuals seem to be the only detailed documents for the DOS side of the language for MSVC 1.52:


Unless someone knows better?

The MSVC 1.52 manuals use an odd ebook format, only usable within the IDE, it seems no one knows how to extract that to a better format.. (?)
 
Last edited:
Oh I thought you wanted the Win16 stuff. It looks like there was a full set of printed manuals for MSVC 1.5, but they were only sold separately. So probably pretty rare, and unlikely they've been scanned.

Visual C++ 1.5 extended printed manuals (these were purchased separately from the software)
Database Classes For the Microsoft Foundation Class Library, 55249
OLE 2 Classes, 55250
App Studio User's Guide, 198 pages, 55251
Class Library User's Guide For the Microsoft Foundation Class Library, 55252
Class Library Reference For the Microsoft Foundation Class Library, 55253
Visual Workbench User's Guide, 212 pages, 55254
Programming Techniques, 55255
Programming Tools for Windows, 191 pages, 55256
CodeView Debugger User's Guide, 55257
Command-Line Utilities User's Guide, 55258
Source Profiler User's Guide, 78 pages, 55259
C Language Reference, 287 pages, 55260
C++ Language Reference, 455 pages, 55261
Run-Time Library Reference, 55265
iostream (sic) Reference, 55266

The MSVC 1.52 manuals use an odd ebook format, only usable within the IDE, it seems no one knows how to extract that to a better format.. (?)
Is it WinHelp (.hlp) or something else?
 
Re old document/help file format:
If you can extract a working win16 executable that can display the documents, I strongly recommend taking a look at OTVDM. It's an open source project that replaces the NTVDM thing that used to be part of 32-bit Windows, except that OTVDM works with modern 64-bit Windows and on modern Windows versions.
I'm using it to run the calculator from Windows 3.11, Tetris from Windows Entertainment Pack, and also a Mahjong style win16 game called "taipei", on my Windows 10 computer. If you want to to have the correct icon for a shortcut for starting a Win16 application you need to extract the icon files from the win16 executable and convert it to a file format that modern windows can use for icons. And of course unfortunately you need to create shortcuts to OTVDM with the win16 application as a command line argument, rather than being able to just run a win16 application directly from a command prompt or from the GUI.
 
If the manual file format is not a '.hlp' file then it is probably a '.chm' file. The latter file type is known as a Microsoft Compiled HTML Help File.


You can use a standalone viewer application to access them on a modern version of Windows.

E.g.

KCHMViewer


For '.hlp' also known as WinHelp there are paid 3rd party tools (HelpScribble, FileMagic) that can view and edit them. Or you can track down a copy of WinHlp32.exe and any supporting files from an older version of Windows (pre-Windows 10).
 
Last edited:
Yes there are .HLP files there, but they dont seem to have any details on the DOS side of the language. I was hoping to find a fully detailed pdf reference for MSVC 1.52. I was also thinking of MSVC4.2 which has an odd format online manual.

Thanks to bitsavers I now have the MSVC7 pdf which seems to have these details, I think they didn't change much for the DOS 16bit Compiler at that stage.

I was trying to hook the int 0x09 keyboard interrupt, and wanted details on the use if the interrupt function type. You need an active interrupt to detect key-up, scanning port 0x61 isn't quite accurate enough. Borland and MS syntax seem to differ.

It would be nice if there was a straight forward open source HLP to PDF/RTF cli tool written in C.

Thanks for all the pointers, they have been really useful!
 
Last edited:
The best thing would be for Microsoft to have simply released a standalone export tool.

( If they have and somebody knows about, by all means speak up! )

Preferably such a tool would output the data as either plain text (txt, US-ASCII or UTF-8) or some sort of structured text file (json,xml,yaml) with a well defined format and common tools.

The latter approach can easily support neat and tidy identification of text formatting, layout, pictures, etc at the cost of some verbosity.

It's nice to have free and open source software tools, but the next best thing is to be as free of proprietary/undocumented file formats as possible. --- I don't mind paying for useful software, but it sucks to be forced into a corner where the only sensible route is eating the cost or cobbling together a retro environment just to view documentation.
 
I mean...it's documentation for a proprietary compiler. If you really want to be "free" you shouldn't be using MSVC++ in the first place.
 
Ok, but MSVC is the de-facto reference compiler for MSDOS, given that they also wrote MSDOS. In terms of performance, its quite good.

I was considering making Open Watcom an option too. I haven't looked at the 16 bit ports of GNU/LLVM, I don't know how complete they are now. I was specifically at optimising compilers looking that can produce good quality 8086-only code if needed.

With GNU/LLVM the core language documentation is comprehensive and good, but the documentation on the details of a particular port is more variable, because it depends on the coder(s) who made the port.
 
Last edited:
Yes there are .HLP files there, but they dont seem to have any details on the DOS side of the language.

I was trying to hook the int 0x09 keyboard interrupt, and wanted details on the use if the interrupt function type.

I think I'm looking at version MSVC 1.50 - so not exactly your version - but I think I found this information by opening MSCXX.HLP from Windows Explorer. It showed the title "C/C++ Language and Run-Time Reference". I navigated to Language -> Keywords -> __interrupt, and I assume that's what you wanted.

Also for example from the top level I found Run-Time Routines -> System Calls: DOS Interface, which seems to have all the functions I'm used to seeing in the DOS-based QuickHelp from Microsoft C 6 and 7.

Is that stuff available in your version? If not, I think I have some other versions and I can try to figure out what is going on.

Are there other things from the documentation for earlier versions which seem to be missing? I wouldn't be surprised if they stopped including some DOS stuff as it seemed obsolete, but if you have any specific examples of what seems to be missing, I'd be interested to know so I can see if I can find it in those help files or on MSDN CDs.

It would be nice if there was a straight forward open source HLP to PDF/RTF cli tool written in C.

"HelpDeco" is almost exactly what you're after, except:
  • It only generates RTF (the original HLP source), not PDF
  • If I recall correctly, the RTF is full of the special footnotes the Microsoft help compiler uses
  • "Straightforward" might be a stretch
I think it's straightforward to use in many cases, but I didn't find the code very readable in case that's the part you were hoping was straightforward :(

I've used this for many HLP files, and also the MVB files used for the "online books" type documentation of some other contemporary Microsoft products and also TechNet and MSDN CDs.

Another problem with HelpDeco is that it has been forked a lot and has a few bugs when it comes to particularly large files. I seem to have a version based on https://sourceforge.net/projects/helpdeco/ with some patches I've found online and applied, but it's all from a while ago and I've forgotten details.

Personally I don't think RTF or PDF is a great format unless you want to browse on an e-reader or something - I prefer something that is quick to navigate - so I used one of Microsoft's tools to convert from the RTF output by HelpDeco into sources for building a CHM (Windows 95-style help). I wrote some code to convert from some of the proprietary extensions Microsoft used in their documentation viewers to provide tree views of the documents into something I could feed into the CHM compiler, but never really finished it. Ideally I'd like to convert into something I could use in Zeal.

I'm happy to try to help you (or anyone) reproduce my results by digging further through my notes, providing more information, etc. - I'd be very happy for this to be more than just a project I figured out how to do without actually doing it!
 
Back
Top