1INIT
2WANTSTATE p
3
4RESET
5  settermprop 1 true
6  settermprop 2 true
7  settermprop 7 1
8
9!Set up state
10PUSH "\e[2;2H"
11  ?cursor = 1,1
12PUSH "\e[1m"
13  ?pen bold = on
14
15!Save
16PUSH "\e[?1048h"
17
18!Change state
19PUSH "\e[5;5H"
20  ?cursor = 4,4
21PUSH "\e[4 q"
22  settermprop 2 false
23  settermprop 7 2
24PUSH "\e[22;4m"
25  ?pen bold = off
26  ?pen underline = 1
27
28!Restore
29PUSH "\e[?1048l"
30  settermprop 1 true
31  settermprop 2 true
32  settermprop 7 1
33  ?cursor = 1,1
34  ?pen bold = on
35  ?pen underline = 0
36
37!Save/restore using DECSC/DECRC
38PUSH "\e[2;2H\e7"
39  ?cursor = 1,1
40
41PUSH "\e[5;5H"
42  ?cursor = 4,4
43PUSH "\e8"
44  settermprop 1 true
45  settermprop 2 true
46  settermprop 7 1
47  ?cursor = 1,1
48
49!Save twice, restore twice happens on both edge transitions
50PUSH "\e[2;10H\e[?1048h\e[6;10H\e[?1048h"
51PUSH "\e[H"
52  ?cursor = 0,0
53PUSH "\e[?1048l"
54  settermprop 1 true
55  settermprop 2 true
56  settermprop 7 1
57  ?cursor = 5,9
58PUSH "\e[H"
59  ?cursor = 0,0
60PUSH "\e[?1048l"
61  settermprop 1 true
62  settermprop 2 true
63  settermprop 7 1
64  ?cursor = 5,9
65