PDP12.ORG Logo

PDP-8 Minis
PDP-8/I
PDP-8 (0)
PDP-8/A
PDP-8/E (3)
PDP-8/F
PDP-8/I
PDP-8/L
PDP-8/M (2)
PDP-8/S (0)
Reference
PDP-11 Minis
PDP-11/R20
PDP-11/10
PDP-11/20
PDP-11/R20
PDP-11/23
PDP-11/34
Reference
PDP-12 Minis
PDP-12 Front View
PDP-12
Reference
Calculators
Front View of HP-9100
HP-9100B
Monroe 630
Tektronix 909
Test Equipment
Front View of HP-3440
GR-1683
HP-3440
Marconi 2955B
Miscellaneous
Front View of IBM 360 Front Panel
Help the Museum
About...
Contact Us
Hosted by KRTEN.COM

PDP-8 Pattern Filler Program


This program fills memory with the given fill value, then increments the fill value and does it all over again. The program finishes when the pattern reaches 0000.


l0, 0000 1007 tad start / get starting address, 0001 3016 dca addr / and store into working buffer. l1, 0002 1015 tad pat / get pattern 0003 3416 dca i addr / and write into memory (autoincrement) 0004 5002 jmp l1 / loop 0005 2016 isz pat / all addresses done, get next pattern 0006 5000 jmp l0 / loop 0007 7402 hlt / all patterns done, halt. pat, 0015 0000 / starting pattern, suggest 0000 addr, 0016 0000 / temporary working variable start, 0017 0020 / start of testable memory, suggest 0020

The running time is 02:11 on real hardware. Given that addresses 0002 through 0005 form the bulk of the work, that places the PDP-8/I's speed at about 0.5 MIPS (2:11 is 131 seconds; the inner loop executes nearly 16 million times (4k locations x 4k patterns); 16 million divided by 131 is about 122k; 4 instructions at 122k iterations per second is 488k IPS).

Latest Updates
Master Reference
PDP-12 is alive!
New machine: PDP-8/L

Contact us This page was updated on Fri Feb 19 00:10:08 EST 2010 © 2000-2007 by Robert Krten.
All rights reserved.
Areas of expertise: 8044, 8051, ARC/CBS, ARCNet, ARM, ASM-86, Automated Disassembly, Avanza, Avionics Software, awk, bash, Bell 103, Bell 202, BITBus, Bootloaders, C, Call Processing, Caller ID, CF-UTTH, Clear Thinking and Common Sense, Client/Server, CMR-91, Code Analysis, Cold Standby, Computer Based Training, Course Developemnt, Course Presentation, CRS-1, curl, cvs, Czech Language, Databases, Data Acquisition, Data Recovery, Decompilation, Debugging, Distributed Processing, DMS-100, Documentation, Drivers, DSP, DTMF, E.164, Embedded Systems, Emulation, Equinox, expect, Fault Tolerance, FFT, Filesystems, Firewalls, Fractals, FreeBSD, FSK, Gammacell 40/1000/3000, Graphics, GSR-12000, Hardware, High Availability, Home Automation, Hot Standby, HTML, HTTP, IDA Pro, IIDS, Image Processing, In-Service Upgrade, Industrial Automation, Infrastructure, Internationalization, iRMX-86/286, ISBT-128, Kernels, ksh, Ladder Logic, Lexical Analyzers, Linux, Loggers, m4, make, Medical Devices, Memory Constrained Environments, Message Passing, Microcontrollers, MIDI, MIL-STD-2167A, NNTP, OpenBSD, Optimization, OrCAD, Oscilloscopes, PABX, Parallel Processing, Parsing, PDP-8, Photon, Porting, POSIX, POVRay, Powerpoint, PowerPC, Preprocessor, Process Control, Program Flow Analysis, Project Management, Prototyping, Public Speaking, QNET, QNX 2, QNX 4, QNX 6 (Neutrino), Radarsat, rcs, Realtime Techniques, Recursive Descent Parsers, Regression Testing, Regular Expressions, Requirements Analysis, Resource Managers, Restoration, Reverse Engineering, Scripting, Security Systems, sed, Serial Protocols, SGML, Simulation, SMDR, SMTP, Soldering, svn, SX-20, Synthesizers, System Architecture, T.4, T.30, TCL, TCP/IP, Technical Presentations, Technical Writing, Telecoms, Testcases, Testjigs, Text Processing, Threads, Tools, Traceability Matrices, TTL, UNIX, Utilities, UUCP, Validation Protocols, Vaulting, VAX/VMS, vi, Virtual Filesystems, Warm Standby, wget, Wirewrap, X-10, X.25, x86