[author : Charles B. Falconer] #Listing #Assembly #Mathematics #Programming
Extract : « This software is released only for publication by Doctor Dobb’s Journal, and for the private non-profit,non-commercial use of individuals and educational institutions. Incorporation in any instrument, software package, ROM, etc. for sale is expressly forbidden without written consent from myself, at which time any such use must be clearly identified as licensed.
I would appreciate any DDJ reader who observes such unlicensed use advising me of the circumstances.
This software package provides full floating point arithmetic capability for 8080, 8085, and Z80 based machines, with very little speed penalty over use of integer arithmetic. The system can handle all 16 bit integer values (treated either as positive integers in the range 0 to 65535, or as signed integers in the range -32768 to 32767) without any loss of information, yet the extended range (approximately 10 ↑ -38 to 10 ↑ 38) convenience of floating point is directly available, together with various mathematical functions (i.e. logarithms, exponentials, etc.) [...] »
[author : Paul Holliday] #Listing #Assembly #Encoding #Programming
Extract : « The purpose of CONVPATB is to convert a file from Palo Alto Tiny Basic (PATB) format to ASCII format. The reason conversion to ASCII is required is that Tiny Basic files contain intermixed binary and ASCII data which cannot be printed or listed as is. That is, only the original Tiny Basic interpreter can decode the binary data portions of the file. This program converts the first two bytes of every line (binary data) to a four digit ASCII number and adds a line feed after each carriage restore. The new (converted) file can then be printed, listed, or edited just like any other ASCII file. [...] »
[author : Gary D. Gaugler] #Listing #Assembly #Storage #OperatingSystem
Extract : « QUOLST is a transient program for the Smoke Signal BFD-68 disc system. This transient will report the sector availability for a diskette in the specified drive. QUOLST reports the number of sectors used on the diskette for nonsystem files and the number of sectors used for system files (those with a ‘$’ extension). QUOLST will then report the total number of sectors available on the diskette. [...] »
[author : David Burris and Wayne Byrd] #Algorithm #Storage #DataManagement #Book
Extract : « Mini and micro computers are performing many jobs today formerly relegated to larger computer systems with extensive auxiliary storage. Sorting of sequential files on compact systems is frequently a challenge when the number of records to be sorted exceeds main memory and auxiliary storage space is limited. Many efficient sorting techniques, such as polyphase and a balanced merge (2,3), are available when two or more temporary sequential tape/cassette or direct access files may be allocated to the sorting process. The problem is greatly aggravated, however, when there is insufficient direct access storage available to allocate one or more temporary files or if a single sequential auxiliary storage device (such as a cassette drive) must hold both the sorted and unsorted file. The following algorithm sorts a sequential file under the circumstances stated with no movement of records. [...]
References
1. Feurzeig, W. Mathsort, Comm. ACM 3 (1960), 601.
2. Knuth, Donald E. Sorting and Searching, Addison-Wesley, 1973.
3. Martin, William Sorting, Computing Surveys 3 (1971), 147. »
[author : Jim Gagne] #Listing #Assembly #Encoding #Programming
Extract : « Any CP/M user knows what a drag it is to write source code with the CP/M editor, and how nice it would be to have a good screen-oriented editor like Michael Shrayer’s Electric Pencil. Unfortunately, Pencil files are not accepted by the CP/M assembler, BASIC, or other programs, primarily because of a problem with the line termination characters. I was outraged that Michael Shrayer would charge $35 for a simple little program to convert .PCL files from the Electric Pencil II to CP/M files and vice versa, since the only differences are line termination characters (Pencil files omit the line feed), tabs (there is no HTAB character in Pencil files, only the prooer number of spaces), and end-of-file characters (1AH in CP/M, 00 in Pencil). So PENCPM is my answer to Shrayer, and I think it works well. [...] »
[author : Klaus Holtz] #Algorithm #ArtificialIntelligence
Extract : « How would you like to build a futuristic self-learning computer which is educated almost like a human child and lets you get rid of all that messy programming? A computer with unlimited, reliable memory and total recall which, once set up, never needs programming or supervision of its internal functioning.
Science fiction? Not at all. These computers are already on the drawing board. Moreover, you can build such a computer in just a few days. All you need is a microprocessor, a cheap mass memory such as a tape cassette and some kind of keyboard/display. The resulting system will be truly astonishing, functioning in a way totally different from conventional computers. It is not just another clever architecture or programming trick, but a completely different way of building computers. [...]
Reference
"Here comes the brain-like self-learning no programming computer of the future" The first West Coast Computer Faire Conference Proceedings Computer Faire Box 1579 Palo Alto CA 94302 »
[author : Curtis Roads] #Microprocessor #Review
Extract : « (A similar article appeared in Vol. II, No. 3 of Computer Music Journal)
In the next few paragraphs, I’m going to take a look at what appears to be one of the more important new microprocessors—the Motorola MC68000—from a critical vantage, since, in the past, I’ve been one who has accepted the assets (high-performance, mature and elegant software tools) and liabilities (cost) of traditional minicomputers as against microcomputers for applications requiring a disk operating system, multiprogramming, and a complement of software utilities and high-level languages.
In approaching the literature on the MC68000, a most encouraging sign is the statement: “The MC68000 hardware design was heavily influenced by advances in software technology”
The MC68000 is the latest stage in a series of microprocessors that began with Motorola’s 6800 chip. An intermediate stage has been the 6809 chip, a kind of pseudo 16-bit machine, with 8-bit registers and 16-bit arithmetic and addressing. [...]
REFERENCES
(1) “Introducing the MC68000,” (1978) Motorola, Phoenix.
(2) “16-bit MPU’s: Past, Present, and Future —the 6800 Approach,” R.G. Daniels, G.J. Summer-Motorola, 1978 WESCON Session 20, Los Angeles.
(3) “16-bit MPU’s to Offer Performance of Mini’s,” D. Bursky, (1978), Electronic Design, Vol. 26, No. 18, Rochelle Park.
(4) “Complex Systems are Simple to Design,” I. Lemair, R. Nobis—Motorola, (1978) Electronic Design , Vol. 26, No. 18, Rochelle Park. »
[author : Sylvan Rubin] #Listing #Languages #BASIC #Programming
Extract : « In this article, a preprocessor for BASIC will be described that improves the writeability and readability of BASIC so much that it’s almost like a new language.
Nearly all versions of BASIC share two features that obstruct their effective use in writing fairly large or complex programs. These are the sequential line numbers required for all program statements, and the very restricted variable names allowed. These holdovers from the original Dartmouth BASIC were once useful, because the line numbers provided an editing capability on systems that lacked real editing software, and the short variable names used less memory, and could be preallocated to a fixed data space. While some very elementary present-day microcomputers may still require such drastic simplicity, most systems are provided with a competent editor (which is typically much smaller than the BASIC interpreter), and most programmers can write programs with an editor far more easily than by typing statements directly into a BASIC interpreter. [...] »
[author : Joel Swank] #Electronic #Interface
Extract : « When I first began expanding my KIM, I soon ran out of I/O ports. KIM’s 15 bits of user I/O can drive a fairly sophisticated device, but what if you have two such devices? I chose to add PIAs (Peripheral Interface Adaptor), specifically, the Motorola 6820 PIA (identical to the MOS Techonology 6520). The 6820 contains two eight bit ports with two control lines each. This device is designed to operate connected to the system bus and occupy part of the CPU’s address space. Each eight bit port takes up two memory addresses, so you can get a lot of I/O without using much address space. It is a MOS device and therefore uses little power, and is compatible with most microprocessor busses. The cost is relatively low— I’ve seen them advertised for under $4. With programmable features like automatic handshake, pulse mode, and interrupt capability, they are hard to beat. [...] »