1 " ***********************************************************
 2 " *                                                         *
 3 " * Copyright, (C) Honeywell Information Systems Inc., 1984 *
 4 " *                                                         *
 5 " ***********************************************************
 6           name      tnz
 7           entry     tnz
 8 
 9 tnz:      push
10 
11           spri      pr6|64
12           epp2      ap|2,*
13           epp2      bp|0,*
14           epp3      pr2|1026
15           spri3     pr2|36
16           lda       PATTERN
17           sta       pr2|64
18           lda       0,dl
19           stz       pr2|8
20 
21 tnz_loop:
22           tra       start
23 
24           org       1018
25 start:
26           ldq       pr2|64
27           epp3      pr2|36,*
28           cmpq      pr3|540,*
29           tze       2177,ic             = 3198 (=6176o)
30           ldq       pr2|64
31           tnz       2142,ic             = 3165 (=6135o)
32           tra       ZOP
33 
34           org       3165
35           adla      1,dl
36           cmpa      =o400,dl
37           tnz       CHECK
38           lpri      pr6|64
39           return
40 
41 CHECK:    cmpa      pr2|8
42           tmi       BAD1
43           aos       pr2|8
44           cmpa      pr2|8
45           tnz       BAD2
46           tra       tnz_loop
47 
48 BAD1:     oct       010101000000
49 BAD2:     oct       020202000000
50 
51 PATTERN:  oct       077777013521
52 ZOP:      oct       252525000000
53           org       4096-3   " force next test to be bound at a mod 1024.
54           end