[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. [...] »
[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. [...] »
[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. [...] »
[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. [...] »
[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. [...] »
[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 [...] »
[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. [...] »
[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. [...] »
[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. »
[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. [...] »
[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. [...] »