1 1.1 christos # mach: all 2 1.1 christos # output: 3 1.1 christos # sim: --environment operating 4 1.1 christos # as: -W 5 1.1 christos 6 1.1 christos .include "t-macros.i" 7 1.1 christos 8 1.1 christos start 9 1.1 christos 10 1.1 christos ;;; Try out each bit in the PSW 11 1.1 christos 12 1.1 christos loadpsw2 PSW_SM 13 1.1 christos checkpsw2 1 PSW_SM 14 1.1 christos 15 1.1 christos loadpsw2 PSW_01 16 1.1 christos checkpsw2 2 0 ;; PSW_01 17 1.1 christos 18 1.1 christos loadpsw2 PSW_EA 19 1.1 christos checkpsw2 3 PSW_EA 20 1.1 christos 21 1.1 christos loadpsw2 PSW_DB 22 1.1 christos checkpsw2 4 PSW_DB 23 1.1 christos 24 1.1 christos loadpsw2 PSW_DM 25 1.1 christos checkpsw2 5 0 ;; PSW_DM 26 1.1 christos 27 1.1 christos loadpsw2 PSW_IE 28 1.1 christos checkpsw2 6 PSW_IE 29 1.1 christos 30 1.1 christos loadpsw2 PSW_RP 31 1.1 christos checkpsw2 7 PSW_RP 32 1.1 christos 33 1.1 christos loadpsw2 PSW_MD 34 1.1 christos checkpsw2 8 PSW_MD 35 1.1 christos 36 1.1 christos loadpsw2 PSW_FX|PSW_ST 37 1.1 christos checkpsw2 9 PSW_FX|PSW_ST 38 1.1 christos 39 1.1 christos ;; loadpsw2 PSW_ST 40 1.1 christos ;; checkpsw2 10 41 1.1 christos 42 1.1 christos loadpsw2 PSW_10 43 1.1 christos checkpsw2 11 0 ;; PSW_10 44 1.1 christos 45 1.1 christos loadpsw2 PSW_11 46 1.1 christos checkpsw2 12 0 ;; PSW_11 47 1.1 christos 48 1.1 christos loadpsw2 PSW_F0 49 1.1 christos checkpsw2 13 PSW_F0 50 1.1 christos 51 1.1 christos loadpsw2 PSW_F1 52 1.1 christos checkpsw2 14 PSW_F1 53 1.1 christos 54 1.1 christos loadpsw2 PSW_14 55 1.1 christos checkpsw2 15 0 ;; PSW_14 56 1.1 christos 57 1.1 christos loadpsw2 PSW_C 58 1.1 christos checkpsw2 16 PSW_C 59 1.1 christos 60 1.1 christos 61 1.1 christos ;;; Check that bit 0 (LSB) of the MOD_E & MOD_S registers are stuck at ZERO. 62 1.1 christos 63 1.1 christos ldi r6, #0xdead 64 1.1 christos mvtc r6, cr10 65 1.1 christos ldi r6, #0xbeef 66 1.1 christos mvtc r6, cr11 67 1.1 christos 68 1.1 christos mvfc r7, cr10 69 1.1 christos check 17 r7 0xdeac 70 1.1 christos mvfc r7, cr11 71 1.1 christos check 18 r7 0xbeee 72 1.1 christos 73 1.1 christos ;;; Check that certain bits of the PSW, DPSW and BPSW are hardwired to zero 74 1.1 christos 75 1.1 christos psw_ffff: 76 1.1 christos ldi r6, 0xffff 77 1.1 christos mvtc r6, psw 78 1.1 christos mvfc r7, psw 79 1.1 christos check 18 r7 0xb7cd 80 1.1 christos 81 1.1 christos bpsw_ffff: 82 1.1 christos ldi r6, 0xffff 83 1.1 christos mvtc r6, bpsw 84 1.1 christos mvfc r7, bpsw 85 1.1 christos check 18 r7 0xb7cd 86 1.1 christos 87 1.1 christos dpsw_ffff: 88 1.1 christos ldi r6, 0xffff 89 1.1 christos mvtc r6, dpsw 90 1.1 christos mvfc r7, dpsw 91 1.1 christos check 18 r7 0xb7cd 92 1.1 christos 93 1.1 christos ;;; Another check. Very similar 94 1.1 christos 95 1.1 christos psw_dfff: 96 1.1 christos ldi r6, 0xdfff 97 1.1 christos mvtc r6, psw 98 1.1 christos mvfc r7, psw 99 1.1 christos check 18 r7 0x97cd 100 1.1 christos 101 1.1 christos bpsw_dfff: 102 1.1 christos ldi r6, 0xdfff 103 1.1 christos mvtc r6, bpsw 104 1.1 christos mvfc r7, bpsw 105 1.1 christos check 18 r7 0x97cd 106 1.1 christos 107 1.1 christos dpsw_dfff: 108 1.1 christos ldi r6, 0xdfff 109 1.1 christos mvtc r6, dpsw 110 1.1 christos mvfc r7, dpsw 111 1.1 christos check 18 r7 0x97cd 112 1.1 christos 113 1.1 christos ;;; And again. 114 1.1 christos 115 1.1 christos psw_8005: 116 1.1 christos ldi r6, 0x8005 117 1.1 christos mvtc r6, psw 118 1.1 christos mvfc r7, psw 119 1.1 christos check 18 r7 0x8005 120 1.1 christos 121 1.1 christos bpsw_8005: 122 1.1 christos ldi r6, 0x8005 123 1.1 christos mvtc r6, bpsw 124 1.1 christos mvfc r7, bpsw 125 1.1 christos check 18 r7 0x8005 126 1.1 christos 127 1.1 christos dpsw_8005: 128 1.1 christos ldi r6, 0x8005 129 1.1 christos mvtc r6, dpsw 130 1.1 christos mvfc r7, dpsw 131 1.1 christos check 18 r7 0x8005 132 1.1 christos 133 1.1 christos 134 1.1 christos exit0 135