MVS/380 VSESRC code
Brought to you by:
kerravon86
| File | Date | Author | Commit |
|---|---|---|---|
| asm | 2011-01-05 |
|
[8618ed] better comment |
| readme.txt | 2011-01-05 |
|
[40c34e] more details about matching object |
DOS/VS R34 source code was put into CVS as follows: 1. Source files punched one at a time from the optional source using SSERV. 2. Utility run to strip BKEND lines at beginning and end to produce vsesrc-ebcdic.zip 3. Data zipped and sent to an MVS PDS, then zipped using minizip with ASCII conversion. Result imported into CVS. tag dosvs34-v1r0m1 applied. 4. Utility run to find control characters remaining, which were then replaced with hex. Hex in PUNCH statements was replaced with COPY statements, which in turn rely on the utility "objrepro" (from the MVS/380 project) to be available. The PUNCH statements in hist.asm were non-trivial. I could have done a punch of these on MVS and then run the disassembler over it, but I didn't think of that at the time, and just did a hexdump of the EBCDIC source code, PUNCH and all, and then masked out just the data that I wanted, hand-coded them into C and X constants, assembled it by adding it to the front of vsestart.asm in PDPCLIB, then took the assembler listing and again masked out the hex I needed, then ran a utility "hdtofil" to produce a binary file from the two hexdumps, then did an fc /b to ensure a perfect match. tag dosvs34-noctl applied vsesrc-noctl.zip produced 5. Line numbers stripped using clnblank. tag vse-base applied vsesrc-base.zip produced Size reduced from 8.8 MB to 6.7 MB (compressed) by doing this. As its name implies, this is what I consider the base DOS/VS source code to be, from which all future releases can be relatively easily diffed against, and which can surive the source control system because there are no control characters. No line numbers means that non-line-number-aware utilities (ie most utilities, at least on ASCII systems) can be used on the files also. Bug fixes for VSE/380 were then made, albeit "late" (ie after VSE/380 1.0 had already been released). A branch vse380-1_0 was then applied, and a specific vse380-1_0-v1 tag. This is in case the source turns out to not match what was actually released, and further source code changes are required to make it an accurate reflection of the executables. This is the result of not compiling from source, because at the time of release we were not in a position to do so.