Updated the page on the MACRO-10 macro recursion test

This commit is contained in:
Jeff 2017-03-19 22:46:28 -07:00 committed by Jeff Parsons
commit 0c88f362e2
4 changed files with 49 additions and 8 deletions

View file

@ -7,13 +7,20 @@ machines:
type: pdp10
config: /devices/pdp10/machine/ka10/test/debugger/machine.xml
debugger: true
commands: a 100 /apps/pdp10/tests/MACTEST1.MAC
---
DEC PDP-10 Opcode Tests
-----------------------
DEC PDP-10 Tests
----------------
The PDP-10 machine below loads the following test:
This page describes a collection of tests used to perform *very* simple exercises of PDPjs components:
- [Simple Opcode Tests](#simple-opcode-tests)
- [MACRO-10 Mini-Assembler Tests](#macro-10-mini-assembler-tests)
Simple Opcode Tests
-------------------
The PDP-10 machine below loads the following hand-written test:
- [PDP-10 Half-Word Opcode Test](OPTEST01.json)
@ -122,3 +129,36 @@ To assemble and test the same instructions in [SIMH](https://github.com/simh/sim
1: 111111444444
2: 444444111111
3: 000000000000
MACRO-10 Mini-Assembler Tests
-----------------------------
The following command loads an early test of the built-in PDPjs MACRO-10 Mini-Assembler:
a 100 /apps/pdp10/tests/TEXT.MAC
[TEXT.MAC](TEXT.MAC.txt) is a copy of the file listed on p. 7-9 of the
[MACRO-10 Assembler Programmer's Reference Manual (June 1972)](/pubs/dec/pdp10/). It's a simple test
of nested macro definitions, recursion, expressions using shift operators and character constants,
and pseudo-ops **IRPC**, **IFE**, **IFN**, and **EXP**. It generates 4 words of data.
If successful, the following results should appear:
>> a 100 /apps/pdp10/tests/TEXT.MAC
starting PCjs MACRO-10 Mini-Assembler...
loading TEXT.MAC
4 words loaded at 000100-000103
00=000000000000 01=000000000000 02=000000000000 03=000000000000
04=000000000000 05=000000000000 06=000000000000 07=000000000000
10=000000000000 11=000000000000 12=000000000000 13=000000000000
14=000000000000 15=000000000000 16=000000000000 17=000000000000
PC=000100 RA=00000000 EA=000000 C0=0 C1=0 OV=0 ND=0 PD=0
000100: 014101 102103 UUO 2,102103(1)
and if you dump the first 4 words with the command `db 100 l4`:
>> db 100 l4
000100: 014101 102103 003 004 011 004 041 ....!
000101: 104105 106107 021 004 051 014 043 ..).#
000102: 110111 112113 022 004 111 024 045 ..I.%
000103: 114000 000000 023 000 000 000 000 .....