1979 5.08 1981

Vol.5 n°8 (#48) september 1980

Vol.5 n°8 (#48) september 1980

(ddj_1980_09.jpg)

p.4 A Runtime Library for the Small c Compiler (p.312 in reprint volume 5)

p.4 A Runtime Library for the Small c Compiler (p.312 in reprint volume 5)

[author : Ron Cain] #Listing #Assembly #Programming

Extract : «  The small C compiler for 8080’s published in DDJ #45, made reference to a runtime library. Although the listing of that runtime library did not appear in that issue due to the sheer mass of code of the compiler itself, there has been sufficient demand (and there is now sufficient room) for it.

Actually, the library consists of two distinct modules of code. It contains: (1) the arithmetic and logical routines which are called from the code generated by the compiler, and (2) the I/O routines likely to be called by the user. [...]  »

p.16 Thoughts on Small Systems and Monitors (p.324 in reprint volume 5)

p.16 Thoughts on Small Systems and Monitors (p.324 in reprint volume 5)

[author : H. T. Gordon] #GeneralQuestions #Listing #Assembly

Extract : «  I define a “small” system as one that is owned and used by only one person. This still allows more than a ten-fold range in cost and complexity, but the common ground is the man/machine interaction that can be (for the human being) a profound educational experience. My first system was a KIM-1, the creation of Don McLaughlin while he was at MOS Technology. This early SBC launched the new 6502 (in the dim and distant past of 1976!) and, together with brilliant descriptive manuals, played a major role in its popularization. It was —belatedly— emulated by the makers of other microprocessors, and of course surpassed by more complex systems of the multiboard type. As a learning tool it still has few (perhaps no) equals. All of my previous communications, in DDJ and elsewhere, were worked out on my KIM. [...]  »

p.22 Programming Pastimes and Pleasures (p.330 in reprint volume 5)

p.22 Programming Pastimes and Pleasures (p.330 in reprint volume 5)

[author : Charles Wetherell] #Programming

Extract : «  If you have spent much time around professional programmers and their managers in the last five years, you have certainly heard about structured programming. However, you could be forgiven if you have not made up your mind whether structured programming is a blessing or a curse. As a matter of fact, you might well decide that structured programming is some kind of disease.

The reason for your confusion could be the conversations you had overheard. It is not uncommon to hear that over at Impossibly Big Machines, Inc., they have just taken up structured programming, said in tones suggesting that the company should live through the attack. Or you might hear a project leader from Completely Delerious Computing say thankfully that he finally got his system out in spite of all those fancy rules. Then again, you might go to a meeting trying to sell your application package to Golf & Wasters, Inc. and be told that it won't be considered unless every last IF statement is indented just so. All of this suggests that structured programming is something like staphylococcus —it causes boils, but it also can be turned into a valuable antibiotic. [...]  »

p.24 Polymorphic Talks to the H-14 Printer (p.332 in reprint volume 5)

p.24 Polymorphic Talks to the H-14 Printer (p.332 in reprint volume 5)

[author : Marvin Konopik] #Printer

Extract : «  I purchased the Heath H-14 printer after careful thought and meditation. I certainly never assumed that my limited background in electronics was sufficient to contemplate building an interface to connect a printer to a computer. Desperately in need of professional advice, I called Heath to find out how hard it would be to interface the two. Needless to say, they said they were only concerned with Heath problems. This left only me and the computer to solve the problems. [...]  »

p.26 A Note on 6502 Indirect Addressing (p.333 in reprint volume 5)

p.26 A Note on 6502 Indirect Addressing (p.333 in reprint volume 5)

[author : W. D. Maurer] #Listing #Assembly #Programming

Extract : «  There are two kinds of indirect addressing on the 6502, both of them with indexing. Except for JMP, however, indirect addressing without indexing is not provided. Since indirect addressing seems to be more useful without indexing than with it, many people have erroneously regarded this as a design flaw.

In fact, anything you can do with indirect addressing without indexing can be done, and done faster, with post-indexed (Y-register) indirect addressing on the 6502. We shall now give several illustrations of this. [...]  »

p.32 Northstar X-Reference Tool (p.339 in reprint volume 5)

p.32 Northstar X-Reference Tool (p.339 in reprint volume 5)

[author : John Holtrichter, Jr.] #Listing #Assembly #Programming #Storage

Extract : «  [...] Since double density is now becoming very popular, I thought your readers might like to make the changes indicated at the end of this letter in order to implement the reading, in a double density system, of single density type 2 files on single density diskettes, and both single and double density files on double density diskettes [...]  »

p.34 Hardcopy Device Driver Programs for CP/M (p.341 in reprint volume 5)

p.34 Hardcopy Device Driver Programs for CP/M (p.341 in reprint volume 5)

[author : Steve Willoughby] #Listing #Assembly #Printer

Extract : «  The following programs were written to add a flexible hardcopy output to a CP/M system. These programs may be coresident (i.e. punch tape and print on tty and also print on daisywheel printer). The hardware consists of a processor with 32K bytes of contiguous low read/write memory, (RAM, with 4 K bytes of RAM at D000, a serial interface wherein RS-232 pin 20 (Data terminal ready) disables transmit buffer empty (TBMT) status to allow high speed transfers with buffered printers by handshaking through DTR. The software shown uses the same interface for both devices, so these routines would not logically be coresident without changing one interface assignment. [...]  »

p.38 The Love Program (p.345 in reprint volume 5)

p.38 The Love Program (p.345 in reprint volume 5)

[author : Gary Gaugler] #Listing #Assembly #Graphics

Extract : «  The enclosed listing is an assembly language (PDP-11) version of a program I originally saw in BASIC somewhere. The program was interesting, not terribly useful, and quite slow. However, this is exactly the kind of program one needs when trying to demonstrate a computer system to a non-computer person. I have found it rather successful for nocturnal social acquaintances, etc. Usually they would lose interest by the time the BASIC version would finish. This implementation will be as fast as the output device. An obvious advantage in such situations. [...]  »

p.42 A Problem with Logic Probes (p.348 in reprint volume 5)

p.42 A Problem with Logic Probes (p.348 in reprint volume 5)

[author : David N. Bertollo] #Diagnostic

Extract : «  [...] Using the new TTL logic probe, those open state data lines were not open after all, the processor clock was no longer clocking and those 40 nano-second pulses looked fine. Within ten minutes of using the new probe, the Z80 processor was starting to respond to instructions; within four hours it was fully operational.  »

p.43 An Error-Correcting Record Linking Method (p.349 in reprint volume 5)

p.43 An Error-Correcting Record Linking Method (p.349 in reprint volume 5)

[author : Sylvan Rubin] #Encoding

Extract : «  To enable a program or operating system to verify and correct errors in the pointer links of linked record chains, a redundant set of links is necessary. This compact method uses a ‘forward’ link from each record to its successor record, and a ‘cross’ link, which is the XOR product of the previous record address and the successor record address. These two links are stored in each record. With a typical disk sectoring arrangement, they should probably be stored at opposite ends of the record, to minimize effects of recording medium flaws. [...]  »

p.44 Algorithm: A Monthly Algorithm Column (p.350 in reprint volume 5)

p.44 Algorithm: A Monthly Algorithm Column (p.350 in reprint volume 5)

[author : Dennis Allison] #Listing #Algorithm

Extract : «  Many software systems need some sort of a symbol table. A symbol table is simply a mechanism which associates a name with some information. A name can be a string or a number. Normally one expects the space of possible names to be represented as much, much larger than the number of table entries. Further, there is usually a premium placed on finding entries efficiently. [...]  »