forked from ep00ch/CMS_SBC
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path9619_U7.info
1557 lines (1371 loc) · 36.7 KB
/
9619_U7.info
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
FILE "9619_U7.bin" E000
comment . 6809 INTERACTIVE DEBUG PROGRAM
comment .FOR CREATIVE MICRO SYSTEMS 9609/19 MODULE
comment .(C) 198? MICROWARE SYSTEMS CORPORATION
comment . DES MOINES, IOWA
comment .
* Patch to enter Debugger instead of user code
patch FFFE F8 00
lcomment FFFE ENTER DEBUGGER ON RESET
***** General Info
comment F800 .
comment F800 .HARDWARE REQUIREMENTS:
comment F800 .
comment F800 . ROM AT $F800 - $FFFF
comment F800 . RAM AT $8000 - $9FFF
comment F800 . ACIA AT FFD4
comment F800 . PTM AT FFD8 (ENABLED TO NMI)
comment F800 .
comment F800 SW1 jumpers set ACIA_1 BAUD
comment F800 .
comment E700 ROM LABEL:
comment E700 . Debug 2418
comment E700 . FFFE=A0
comment E700 . 11/6/99
comment E700 .
comment E700 .ORGANIZATION:
comment E700 . E000-E6FF EMPTY
*data E000-E6FF
unused E000-E6FF
insert E700 . ORG $E000
insert E700 . FILL $FF,$700
comment E700 . E700-E7FF RTC DATE/TIME
*unused E700-E7FF
comment E700 . E800?EFFF EPROM PROGRAMMER
*unused E800-EFFF
comment E700 . F000?F7FF ASSEMBLER
*unused F000-F7FF
comment E700 . F800-FF7F DEBUGGER
*unused F800-FF7F
comment E700 . FF80-FFDF I/O SPACE
*unused FF80-FFDF
comment E700 . FFE0-FFFF VECTORS
*unused FFE0-FFFF
comment E700 .
**** Section Info
comment E700 ### RTC CLOCK UTILITIES
*** Section Format
*rmb 0000-009D
data E7FD-E7FF
*** Section Labels
label E700 _SETCLK
label E70A _SETCL1
label E715 _SETCL2
label E71D _RTC_WR
label E738 _RTCADDRWR
label E74E _DELAY3
label E75D _PRCLK
label E758 _DTCMDERR
label E77C _PRCL3
label E780 _PRDIV
label E785 _PRDDIG
label E78B _PR2X
label E78D _PR1X
label E795 _RDCLK
label E79A _RDCL2
label E79E _RDCL3
label E7A8 _RDCL4
label E7AF _RTC_RD
label E7DB _RTC_SSR
*** Section Comments
comment E700 CB2 is EN' for decoder U33
comment E700 U is pointing to PIADDR0
comment E700 RTC DATA STORED IN A
comment E700 RTC ADDR DECrementeD AT B
lcomment E705 GET PIA0 ADDR
lcomment E708 START AT RTC DECADE ADDR
dec E709
lcomment E70A CHECK VALID INPUT
lcomment E70D thought _XCMDCHK did this already
bin E710
lcomment E70F ON 10 HR DIGIT REG...
lcomment E713 FORCE 24 HR CLOCK
lcomment E719 DECREMENT RTC ADDR
comment E71D Set the RTC DATA from A Reg
lcomment E71D SAVE A&B REGISTERS
lcomment E721 GET A FROM A ON STACK
lcomment E723 SET PB4 HI (RTC-WT)
bin E724
lcomment E725 SAVE TO PIA0 PORB
bin E728
lcomment E727 SELECT POR, SET CB2-LO
lcomment E729 SAVE TO PIA0 CRB
lcomment E72D 16 CYCLE DELAY?
lcomment E72F SELECT POR, SET CB2-HI
bin E730
lcomment E731 SAVE TO PIA0 CRB
lcomment E736 RESTORE A&B, RTS
comment E738 Set the RTC ADDR from B Reg. PB4,5 stay low for RTC-ADDR write.
lcomment E738 SAVE A&B REGISTERS
bin E73B
lcomment E73A SELECT DDR, SET CB2-HI
lcomment E73C SAVE TO PIA0 CRB
lcomment E73E PB7,6 in; PB5-0 out
bin E73F
lcomment E740 SAVE TO PIA0 DDRB
bin E743
lcomment E742 SELECT POR
lcomment E744 SAVE TO PIA0 CRB
lcomment E746 LOAD B FROM B ON STACK
lcomment E748 SAVE TO PIA0 PORB
bin E74B
lcomment E74A SELECT POR, SET CB2-LO
lcomment E74C SAVE TO PIA0 CRB
lcomment E74E 3 CYCLE DELAY?
bin E753
lcomment E752 SELECT POR, SET CB2-HI
lcomment E754 SAVE TO PIA0 CRB
lcomment E756 RESTORE A&D, RTS
*bin E758
char E764
lcomment E765 PUSH '/' ON TO STACK
lcomment E767 PRINT DATE
lcomment E76B SPACE BTWN DT, TM
char E771
lcomment E770 USE ':' NOW
lcomment E774 PRINT TIME
lcomment E777 #$34 in S and A
lcomment E77C LOOP 3 TIMES
lcomment E782 PRINT / or : BTWN DIGITS
lcomment E787 DECREMENT LOOP COUNTER
lcomment E788 KEEP OUTPUTTING
lcomment E78D GET X, INC X
lcomment E78F CONVERT TO ASCII #
lcomment E791 PRINT IT
lcomment E794 RETURN
lcomment GET THE DATE/TIME STORE AT X BUF
lcomment E79A START AT RTC DECADE ADDR
lcomment E79E GET THE DIGIT
dec E79B
lcomment E7A2 ON 10 HR DIGIT REG...
lcomment E7A6 JUST GET DIGIT
lcomment E7AA DECREMENT RTC ADDR
lcomment E7AB DO NEXT
lcomment E7AD RESTORE X, RTS
lcomment E7AF SAVE A&B REGISTERS
lcomment E7B4 SELECT DDR, SET CB2-HI
bin E7B5
lcomment E7B6 SAVE TO PIA0 CRB
bin E7B9
lcomment E7BC SELECT POR
bin E7BD
lcomment E7BE SAVE TO PIA0 CRB
lcomment E7B8 PB7,6 in; PB5,4 out PB3-0 in
lcomment E7BA SAVE TO PIA0 DDRB
lcomment E7C0 SET PB5 HI (RTC-RD)
bin E7C1
lcomment E7C2 SAVE TO PIA0 PORB
lcomment E7C4 SELECT POR, SET CB2-LO (EN')
bin E7C5
lcomment E7C6 SAVE TO PIA0 CRB
lcomment E7CC LOAD PIA0 PORB
lcomment E7CE KEEP ONLY RTC DATA
lcomment E7CA 16 CYCLE DELAY?
lcomment E7D0 STORE VALUE IN A ON STACK
lcomment E7D2 SELECT POR, SET CB2-HI
bin E7D3
lcomment E7D4 SAVE TO PIA0 CRB
lcomment E7D9 RESTORE A&B, RTS
lcomment E7DD RTC ADDR FOR STANDARD SIGNAL REG
lcomment E7E2 SELECT DDR, SET CB2-HI
bin E7E3
lcomment E7E4 SAVE TO PIA0 CRB
lcomment E7E6 PB7,6 in; PB5,4 out PB3-0 in
bin E7E7
lcomment E7E8 SAVE TO PIA0 DDRB
lcomment E7EA SELECT POR
bin E7EB
lcomment E7EC SAVE TO PIA0 CRB
lcomment E7EE SET PB5 HI (RTC-RD)
bin E7EF
lcomment E7F0 SAVE TO PIA0 PORB
lcomment E7F2 SELECT POR, SET CB2-LO (EN')
bin E7F3
lcomment E7F4 SAVE TO PIA0 CRB
lcomment E7F6 STORE SSR DATA IN A
bin E7F9
lcomment E7FA SHIFT LEFT, SET CARRY?
lcomment E7FB RESTORE A&D, RTS
comment E800 .
comment E800 ### EPROM PROGRAMMER
comment E800 STAT, TEST, VERF, VIEW, CLR, READ, E, EXIT
comment E800 PARAMETERS: START END RAM-ADDR ROM-OFFSET
comment E800 2716, 2516, 2732, 2532, 2732A, 2764, 27128
comment E800 .
comment E800 PIA 1, PORT A - ADDR LINES (0-7)
comment E800 PIA 1, PORT B - ADDR LINES, HEAD ID
comment E800 PIA 2, PORT A - EPROM CONTROL LINES
comment E800 PIA 2, PORT B - DATA BUS
*** Section Format
word E800-E803
data E80A-E820
const EA14
const EA6A
data ECE4-ED05
data ED07-EDE1
data EDE5-EE59
data EFD9-EFFF
word EFDD
word EFE1
word EFE5
*** Section Labels
label 9D82 P_BUFFLOC
label 9D84 P_START
label 9D86 P_END
label 9D88 P_RAMSTART
label 9D8A P_ROMOFFS
label 9D93 P_THIS
label 9D96 P_DEVICE
label 9D97 P_TABLOC
label 9D99 P_DEVSZ
label 9D9B P_DEVEND
label 9D9D P_HEAD
label AA55 XTAG
label E800 XTAGLOC
label E807 P_EPRM3
label E80A P_DP
label E802 XCMDTBL_VEC
label E80C PIA2PRA_VEC
label E80E PIA2CRA_VEC
label E810 PIA2PRB_VEC
label E812 PIA2CRB_VEC
label E814 PIA1PRA_VEC
label E816 PIA1CRA_VEC
label E818 PIA1PRB_VEC
label E81A PIA1CRB_VEC
label E81C AC1DR_VEC
label E81E AC1SR_VEC
label E820 P_RX_RDY
label E821 P_TX_RDY
label E822 P_WAITBYTE
label E827 P_GETBYTE
label E83E P_NOTRDY
label E842 P_GETPUT
label E852 P_PUTBYTE
label E8A1 P_CMDRUN
const E8AF
const EA02
label EA06 P_PROG1
label EA1A P_PROG2
label EA2B P_PROG3
const EA3A
const EA76
label EAFA P_SETDEV
comment EB1C PRINT OUT ERROR MESSAGE FROM MESSAGE ID IN A
label EB1C P_PRMSG
label EB22 P_PRMS2
label EB28 P_PRMS3
label EB32 P_PRMS0
comment EB36 .
comment EB36 PARSE INPUT, COMPARE WITH P_CMD_TBL
label EB36 P_CMDSRC
label EB3C P_PARIN
label EB4B P_PARI2
label EB57 P_PARER
label EB5A P_PAREX
comment EB67 OUTPUT X AS 4 DIGIT HEX
label EB67 P_X4HEX
const EBF8
label EC3E P_HEX2DEC
label EC59 P_CRLF
label EC67 P_ALNUM
label EC77 P_ALNU2
label EC7A P_ALNUER
label EC7D P_CHKDEV
label EC82 P_DEVMSG
label ECF5 P_MSG_TBL
label EDB4 P_CMD_TBL
label EE5A P_INIT
label EE60 P_INI1
label EE8F P_IN3
label EE94 P_IN2
label EE9F P_IN1
label EEA2 P_2INIT
label EBCB P_PARAM
label EFDB XCMDTBL
label FC32
*** Section Comments
comment E80C I/O VECTOR TABLE
lcomment E821 MASK FOR TRANSMIT DATA REGISTER FULL BIT
lcomment E820 MASK FOR RECEIVE DATA REGISTER EMPTY BIT
comment E822 .
comment E822 MOS 6551 ACIA1 EPROM PROGRAMMER DATA TRANSFER SUBROUTINES
lcomment E827 SAVE OUTPUT BYTE TO STACK
lcomment E829 GET ACIA STATUS
lcomment E82D RX REG HAS A BYTE?
lcomment E831 IF NOT, ALERT CALLER
lcomment E833 RESTORE OUTPUT BYTE FROM STACK
lcomment E835 LOAD DATA BYTE FROM ACIA RECEIVE REG
bin E83A
lcomment E839 MASK OUT HI BIT
lcomment E83B CLEAR CARRY FLAG
lcomment E83D RETURN WITH STATUS IN A, CARRY SET IS NOT READY
lcomment E83E SET CARRY FLAG
lcomment E840 RETURN
lcomment E842 SAVE OUTPUT BYTE TO STACK
lcomment E844 CHECK IF NEXT BYTE IS AVAIL
lcomment E846 IF NOT, SEND OUTPUT BYTE AND RETURN
lcomment E848 RECEIVED ESC?
lcomment E84A IF NOT, SEND OUTPUT BYTE AND RETURN
lcomment E84C IF SO, WAIT FOR NEXT BYTE
lcomment E84E ANOTHER ESC?
lcomment E852 GET ACIA STATUS
lcomment E856 TX REG EMPTY?
lcomment E85A IF NOT, WAIT FOR EMPTY
lcomment E85C RESTORE OUTPUT BYTE FROM STACK
lcomment E85E PUT DATA BYTE INTO ACIA TRANSMIT REG
setdp E864 9D
comment E863 .
comment E863 EPROM PROGRAMMER ENTRY POINT
comment E863 FOR CMS 9614, 9617, 9618 HEADS
label E863 EPROM
lcomment E86A DATA BUFFER DIRECT PAGE ADDRESS
lcomment E86C SET LOOP COUNTER 255
label E86E EPRM2
lcomment E86E CLEAR THE BUFFER
lcomment E868 DIRECT PAGE FOR BUFFER
lcomment E870 DECREMENT COUNTER
lcomment E871 KEEP LOOPING IF >=0
lcomment E878 RESET OFFSET STORE
label E87A EPRM3
lcomment E87E SET DIRECT PAGE TO BUFFER
lcomment E883 S=$9DFF = END OF BUFFER?
const E881
lcomment E89C PRINT "WHAT?"
lcomment E89F BACK TO MAIN LOOP
lcomment E88D PRINT PROMPT
lcomment E8A1 JMP TO ADDR IN TABLE OFFSET BY ITS LOCATION
lcomment E8A3 BASICALLY LBSR FROM TABLE LOCATION
lcomment E8A5 BACK TO MAIN LOOP WHEN DONE
lcomment E8D2 ...
lcomment E8D4 SEND 2 SPACES
lcomment E8E7 SEND 2 SPACES
const E903
lcomment E96F SEND 2 SPACES
lcomment E9C6 SEND START
lcomment E9CB SEND 2 SPACES
lcomment E9D0 SEND END
lcomment E9D5 SEND 2 SPACES
lcomment E9DA SEND RAM-ADDR
lcomment E9DF SEND 5 SPACES
lcomment E9E4 SEND ROM-OFFSET
lcomment EB71 SEND 1 SPACE
lcomment EB7D SEND 1 SPACE
lcomment E9E7 SEND CRLF
char E8F9
const E927
lcomment E994 PRINT "EXCEEDED SIZE"
lcomment E9BE PRINT "START END"
lcomment EA1C
lcomment EA1E PRINT "CONTINUE?"
lcomment EA24 GOT "Y"?
lcomment EA26 DO THE PROGRAMMING
lcomment EA2B ECHO
lcomment EA47 PRINT "EXCEEDED SIZE"
lcomment EA4C SEND BELL
lcomment EA86 PRINT "EXCEEDED SIZE"
lcomment EAFA SAVE DEVICE
lcomment EAFF RESTORE DEVICE
lcomment EB08 PRINT "WRONG HEAD"
lcomment EB0C RESET DEVICE TYPE
label EB0E P_SETDEX
lcomment EB1E LOAD POINTER TO MSG TBL INTO X
lcomment EB24 CONTINUE IF MSG ID <8
lcomment EB26 OTHERWISE, UNKNOWN "ARRRGH"
lcomment EB28 CONVERT A TO WORD OFFSET (MULT BY 2)
lcomment EB29 GET THE POINTER TO THE MSG
lcomment EB2B GET THE ADDRESS OF THE MSG INTO X
lcomment EB2D SEND IT
lcomment EB30 RETURN
lcomment EB3E CHECK IF ALPHA NUMERIC
lcomment EB62 LOAD POINTER TO COMMAND ADDRESS INTO X
lcomment EB64 CLEAR CARRY, FOUND COMMAND!
lcomment EB5C CHECK FOR NULL STRING TERMINATOR
lcomment EB5E IF NOT, NOT COMMAND ERR
char EB94
lcomment EB95 DIGIT?
dec EB98
label EB81 P_BIN2HEX
label EB8F P_SENDHEX
label EB99 P_SENDHE2
label EB9D P_SENDSPS
label EBA3 P_SENDSP1
label EBAE P_SKIPSPX
label EBB2 P_SKIPSP
label EBBE P_SENDMSG
lcomment EB83 GET HI NIBBLE
lcomment EB87 THEN CONVERT IT
lcomment EB89 RESTORE BYTE
lcomment EB8B CONVERT IT
lcomment EB8D RESTORE A, RETURN
lcomment EB8F LO NIBBLE
lcomment EB91 CONVERT TO ASCII NUM
lcomment EB93 RANGE 0-9?
lcomment EB95 IF SO SKIP CORRECTION
lcomment EB97 ADJUST FOR A-F
lcomment EB9F SAVE A AS COUNTER ON STACK
lcomment EBA1 SPACE CHAR IN A
lcomment EBA3 SEND CHAR IN A
lcomment EBA6 DEC COUNTER
lcomment EBA8 LOOP
lcomment EBAA PULL EMPTY COUNTER
lcomment EBAC RESTORE ORIGINAL COUNT, RETURN
lcomment EBC0 GET NEXT MSG LETTER
lcomment EBC2 CHECK FOR NULL END
lcomment EBC4 ACIA OUTPUT MESSAGE LETTER
lcomment EBC7 CONTINUE UNTIL NULL
lcomment EBC9 RETURN
lcomment EC5B CR CHAR
lcomment EC60 LF CHAR
lcomment EC67 TEST LOWER BOUND
lcomment EC69 EXIT IF NOT A DIGIT
lcomment EC6B TEST HIGH BOUND
lcomment EC6D PROCEED IF IT IS AN ASCII NUMBER
lcomment EC84 PRINT "SELECT DEVICE"
lcomment EC9B SAVE START BUFF LOCATION
lcomment EC9D START BUFF IN X (END IN S)
lcomment EC9F CLEAR END OF BUFFER
label EC97 P_ININIT
label ECA1 P_INHNDL
label ECBF P_INHNDL1
label ECD0 P_INHNDLE
label ECD3 P_INHNDL2
lcomment ECA1 WAIT FOR INPUT
lcomment ECA4 BACKSPACE?
lcomment ECA6 IF NOT, JUMP AHEAD TO ???
lcomment ECA8 IF ON THE CORRECT BYTE,
lcomment ECAA GET THE NEXT INPUT BYTE
lcomment ECAC ECHO
lcomment ECAF SPACE CHAR
lcomment ECB1 TO ACIA
lcomment ECB4 BACK SPACE CHAR
lcomment ECB6 TO ACIA
lcomment ECB9 GO TO PREVIOUS BUFFER BYTE
lcomment ECBD CHECK FOR NEXT INPUT
lcomment ECBF CARRIAGE RETURN?
lcomment ECC3 ECHO CRLF
lcomment ECC5 STORE INPUT BYTE IN BUFFER
lcomment ECC9 ON THE RIGHT BYTE?
lcomment ECCD CLEAR CARRY
lcomment ECCF RETURN NORMALLY
lcomment ECD0 SET CARRY
lcomment ECD2 RETURN INDICATING ERROR
lcomment ECD9 SKIP CTRL CHARS
lcomment ECDB STORE A, INCREMENT BUFFER LOC POINTER
lcomment ECDD GET NEXT INPUT CHAR
lcomment ECE2 LOOP
lcomment ECF5 #$00. OFFSET TO ED07 STRING "START END"
lcomment ECF7 #$01. OFFSET TO ED27 STRING "WRONG HEAD"
lcomment ECF9 #$02. OFFSET TO ED42 STRING "EXEEDED SIZE"
lcomment ECFB #$03. OFFSET TO ED6B STRING "PLEASE SELECT"
lcomment ECFD #$04. OFFSET TO ED92 STRING (PROMPT)
lcomment ECFF #$05. OFFSET TO ED96 STRING "WHAT?"
lcomment ED01 #$06. OFFSET TO ED9C STRING "ARRRGH!!!"
lcomment ED03 #$07. OFFSET TO EDA6 STRING "ADDR PR MM"
lcomment ED05 #$08. OFFSET TO ED89 STRING "CHANGE?"
word ECF5-ED06
const ECFD
const E986
word EDB9
lcomment EDB9 $E9EB
label E9EB P_PRO
word EDC0
lcomment EDC0 $E9AC
label E9AC P_STAT
word EDC7
lcomment EDC7 $E998
label E998 P_TEST
word EDCE
lcomment EDCE $E90B
label E90B P_VERF
word EDD5
lcomment EDD5 $E8BE
label E8BE P_VIEW
word EDDB
lcomment EDDB $E8A7
label E8A7 P_CLR
word EDE2
lcomment EDE2 $EA53
label EA53 P_READ
char EDE4
word EDE6
lcomment EDE6 $EA8A
label EA8A P_E
word EDED
lcomment EDED $EAF4
label EAF4 P_2716
word EDF4
lcomment EDF4 $EAF8
label EAF8 P_2516
word EDFB
lcomment EDFB $EAEC
label EAEC P_2732
word EE02
lcomment EE02 $EAE0
label EAE0 P_2532
word EE0A
lcomment EE0A $EAF0
label EAF0 P_2732A
word EE11
lcomment EE11 $EAE0
label EAE8 P_2764
word EE19
lcomment EE19 $EAE4
label EAE4 P_27128
word EE20
lcomment EE20 $EB0F
word EE26
lcomment EE26 $EB0F
label EB0F P_EXIT
label EE29 P_CTRL_TBL
comment EE29 $17 HEAD - 2K*8, 4K*8
comment EE30 $14 HEAD
comment EE4C $18 HEAD
comment EE5A CLEAR THE PIA I/O ADDRESS STORED AT E81A-E80C
lcomment EE5A LOAD EFFECTIVE ADDRESS OF AC1CR_VEC
lcomment EE5E 8 PIA REGISTERS TO CLEAR
lcomment EE60 DECREMENT EXTENDED ADDRESS
lcomment EE62 DEC COUNTER
lcomment EE63 CONTINUE TO CLEAR REGISTERS
label 1401 ID1401
label 1700 ID1700
label 1805 ID1805
comment EE65 LOAD HEAD TYPE FROM PIA1, PORTB, BIT 6,7
lcomment EE65 SET 4-7 IN, 0-3 OUT
lcomment EE67 SAVE TO PIA1 DDRB
lcomment EE6B SELECT POR, SET CB2-LO
lcomment EE6D SAVE TO PIA1 CRB
lcomment E940 PRINT "ADDR PR MM" x4
lcomment EE71 SAVE PIA1 PORB
lcomment EE75 SELECT PIA1 DDRB, CB2 INPUT
bin EE6C
bin EE7A
bin EE7E
bin EE82
bin EE95
bin EEAF
bin EEA5
label EF49 P_SET_THIS1
label EEC3 P_CHK_THIS1
label EEEB P_CHK_THIS2
label EF7B P_SET_THIS2
comment EE79 CHECK HEAD TYPE
comment EE79 CMS 9614, 9617, 9618 AND INIT ACCORDINGLY
lcomment EE79 CHECK ONLY PB6 AND PB7
lcomment EE7B IF BOTH,
lcomment EE7D CHECK IF PB7 HI
lcomment EE7F IF SO
lcomment EE81 CHECK IF PB6 HI
lcomment EE83 IF SO
lcomment EE87 PRINT "WRONG HEAD"
lcomment EE8C SET CARRY FLAG
lcomment EE8E RETURN WITH ERROR IN CARRY
lcomment EE94 SET 6-7 IN, 0-5 OUT
lcomment EE96 SAVE TO PIA1 DDRB
lcomment EEA2 STORE HEAD TYPE ($14, $17, $18)
lcomment EEA4 SET 0-7 OUTPUT
lcomment EEA6 SAVE TO PIA1 DDRA
lcomment EEAA SAVE TO PIA2 DDRA
lcomment EEAE SELECT POR, SET CA/B2-LO
lcomment EEB0 SAVE TO PIA2 CRA
lcomment EEB4 SAVE TO PIA1 CRA
lcomment EEB8 SAVE TO PIA1 CRB
lcomment EEC0 CLEAR CARRY
lcomment EEC2 DONE
lcomment EF1F RESET THIS STORE
lcomment EF21 START OF THE TABLE
lcomment EF23 GET A FROM TABLE ($06, $05, $66)
lcomment EF25 OUTPUT IT ON PIA 2 PORT A
lcomment EF29 SELECT DDR, SET C2 HI ...
lcomment EF2B ON PIA 2 PORT A
lcomment EF2F ALL OUTPUTS ...
lcomment EF31 ON PIA 2 PORT A
bin EF2A
lcomment EF35 SELECT POR ...
lcomment EF37 ON PIA 2 PORT A
bin EF36
lcomment EF3B DELAY MULTIPLIER
lcomment EF3D DELAY .1 SEC?
lcomment EF40 GET A FROM TABLE ($46, $15, $76)
lcomment EF42 SET PIA 2, PORT A OUTPUTS TO A
lcomment EF47 RESTORE, RETURN
lcomment EF5B SELECT DDR MASK ...
bin EF5A
bin EF5C
lcomment EF5D ON PIA 2 PORT B
lcomment EF61 SET TO ALL INPUTS
lcomment EF65 SELECT POR MASK ...
lcomment EF67 ON PIA 2 PORT B
lcomment EF6B GET A FROM TABLE ($02, $01, $20)
lcomment EF6D OUTPUT IT ON PIA 2 PORT A
lcomment EF73 WAIT .075 SEC?
lcomment EF75 GET DATA ON PIA 2 PORT B
bin EF66
lcomment EF79 RESTORE X,A&B, RTS
lcomment EF7B SAVE X,A
lcomment EF81 SELECT DDR
bin EF82
lcomment EF83 ON PIA 2 PORT B
lcomment EF87 SET TO ALL OUTPUTS
lcomment EF8D SELECT POR
lcomment EF8F ON PIA 2 PORT B
lcomment EF95 GET A FROM TABLE ($CA, $0B, $49)
lcomment EF97 OUTPUT IT ON PIA 2 PORT A
lcomment EF9D WAIT .05 SEC?
lcomment EF9F restore X,A, RTS
lcomment EFA1 store X,D
lcomment EFA3 SAVE B ($01, $00, OR $05)
lcomment EFA7 AxB into D ($07, $00, OR $23)
lcomment EFA8 SAVE POINTER TO TABLE IN X
lcomment EFAC OFFSET TABLE BY MULTIPLIER IN D
lcomment EFAE OFFSET TABLE BY 6 MORE
lcomment EFB0 MAKE SURE HEAD NO ($14, $17, $18) THERE
lcomment EFB2 WE ARE IN THE RIGHT PLACE!
label EFA1 CHEKOFFS
label EFBB SAVEOFFS
label EFC9 RETOFFS
lcomment EFBB SAVE TABLE OFFSET IN MEM
lcomment EFBD GET THE SIZE ($08, $08, $20)
lcomment EFBF SAVE SIZE IN MEM
lcomment EFC4 SAVE SIZE-1 (END) IN MEM
lcomment EFC9 RESTORE, RETURN
bin EF8E
label EFCB DELAY10MS
label EFCD DLY10M1
const EFCE
const EFC1
label EFD0 DELAY8US
comment EFDB EXTENDED COMMAND DISPATCH TABLE
comment F000 .
comment F000 ### ASSEMBLER
*** Section Format
setdp F000 9F
data F000-F01B
data F0AE-F117
data F59C-F7FF
const F45C
data F475-F4B4
data F4B5-F59A
word F002
word F009
word F00E
word F013
word F018
* Command Table Entry Points
label F01C DICMD
label F039 DBCMD
label F064 XDCMD
label F060 TDCMD
label F039 DBCMD
label F039 DBCMD
label F039 DBCMD
*** Section Labels
label F07A SSBK2?X
label F475 SFLGS
label F026 DIERR
label F02B DICM1
label F02D DICM2
label F042 DBCM1
label F047 DBCM2
label F04D DBCM3
label F05C DBCMR
*** Section Comments
comment F01C .
comment F01C "DI" COMMAND: DISASSEMBLE INSTRUCTION
comment F039 .
comment F039 "DB" COMMAND: DISASSMEBLE BLOCK OF INSTRUCTIONS
comment F07C Looks same as SSBK @ FCD1
lcomment F07C STOP TIMER
lcomment F083 SAVE USER STACK
lcomment F1C2 CHECK FLAG VIA CARRY BIT
*label F1C2 DSPCC1
lcomment F1CA BRANCH IF NOT DONE
lcomment #$9F GET DEBUGGER DIRECT PAGE
lcomment OUTPUT $
char F1F2
char F1D9
lcomment F475 CONDITION CODE LABELS
comment F800 .
comment F800 ### DEBUGGER
*** Section Format
setdp F800 9F
data F9F3-FA17
data FD1A-FD48
data FD49-FDAB
data FDAC-FDAE * looks like LBSR code, but breaks everything
data FDC1-FE04
data FF7F
word FD4C
word FD50
word FD55
word FD5A
word FD5F
word FD63
word FD68
word FD6C
word FD70
word FD74
word FD78
word FD7C
word FD80
word FD84
word FD88
word FD8C
word FD91
word FD96
word FD9A
word FD9A
word FD9F
word FDA3
word FDA8
*** Section Labels
** DP LABELS
label 9F00 USERSP
label 9F02 DBUGSP
label 9F04 IOBUF
label 9F06 BKPTBL
label 9F08 INBKPT
label 9F09 ACECHO
label 9F0A USECRLF
label 9F0B ACVECT
label 9F0C TIMOUT
label 00FF ACEC_ON
label 9F11 SWIVCT
label 9F17 NMIVCT
label 9F22 BYTCNT
* Command Table Entry Points
comment F8FE .
comment F8FE "A" COMMAND: EXAMINE/CHANGE A REGISTER
label F8FE ACMD
comment F902 .
comment F902 "B" COMMAND: EXAMINE/CHANGE B REGISTER
label F902 BCMD
comment F906 .
comment F906 "CC" COMMAND: EXAMINE/CHANGE CC REGISTER
label F906 CCCMD
comment F909 .
comment F909 "DP" COMMAND: EXAMINE/CHANGE DP REGISTER
label F909 DPCMD
comment F95B .
comment F95B "SP" COMMAND: EXAMINE/CHANGE SP REGISTER
label F95B SPCMD
comment F96D .
comment F96D "PC" COMMAND: EXAMINE/CHANGE PC REGISTER
label F96D PCCMD
comment F961 .
comment F961 "U" COMMAND: EXAMINE/CHANGE U REGISTER
label F961 UCMD
comment F965 .
comment F965 "X" COMMAND: EXAMINE/CHANGE X REGISTER
label F965 XCMD
comment F969 .
comment F969 "Y" COMMAND: EXAMINE/CHANGE Y REGISTER
label F969 YCMD
comment F99F .
comment F99F "E" COMMAND: EDIT MEMORY
label F99F ECMD
comment F9C6 .
comment F9C6 "R" COMMAND: DISPLAY
comment F9C6 USER REGISTER CONTENTS
label F9C6 RCMD
comment FA18 .
comment FA18 "V" COMMAND: VIEW FORMATTED HEX
comment FA18 AND ASCII(?) DUMP OF MEMORY RANGE
label FA18 VCMD
comment FA48 .
comment FA48 "C" COMMAND: CLEAR AND TEST MEMORY
label FA48 CCMD
comment FA90 .
comment FA90 "M" COMMAND: MOVE MEMORY VALUES
label FA90 MCMD
comment FAB5 .
comment FAB5 "G" COMMAND: GO TO USER PROGRAM
comment FAB5 EXECUTE AT PC ADDRESS OR UPDATE
comment FAB5 PC IF PARAMETER IN COMMAND LINE.
label FAB5 GCMD
comment FADE .
comment FADE "J" COMMAND: JUMP TO ADDRESS
label FADE JCMD
comment FAED .
comment FAED "BK" COMMAND - SET OR DISPLAY BREAKPOINTS
label FAED BKCMD
comment FB2E .
comment FB2E "KB" COMMAND: KILL ONE OR ALL
comment FB2E BREAKPOINTS
label FB2E KBCMD
comment FB69 .
comment FB69 "N" COMMAND: NEXT SINGLE STEP
label FB69 SSCMD
label FB72 GTCMD
label FB92 LCMD
label FB8C VLCMD
** Debugger LABELS
label F800 START
label F82C _BKPINIT
label F831 INIT2
label F841 A1IOINIT
label F86B A1INIT3
label F86E COMAND
label F89E CMND2
label F8A2 ILLCMD
label F8A8 CMDERR
label F8B5 _CMDSRC
label F9F3 REGSTR
label FB50 FNDBKP
label FC46 A0IOINIT
label FC59 A0INPCHR
label FC5E A0INPCH2
label FCA0 BKPT
label FCBD BKPT2
label FCC2 BKPT3
label FCCA BKPT4
label FCD1 SSBK
label FCF3 DSPREG
label FD1A TITLE
label FD24 ERRMSG
label FD2E PROMPT
label FD30 OK_MSG
label FD34 BADMSG
label FD39 VRFMSG
comment FD49 COMMAND DISPATCH TABLE
label FD4A CMDTBL
label FDAC _N???
label FDAF _NCOMAND
label FDB2 _NCMDERR
label FDB5 _NSSBK
label FDB8 _NSSCMD
label FE6D _ENDLN
label FD02 SW3SVC
label FD06 SW2SVC
label FD0E FRQSVC
label FD12 IRQSVC
label FD0A SWISVC
label FD16 NMISVC
label A000 _START2
label FE05 RDLIN
label FE08 RDLN2
label FE17 RDLN3
label FE21 RDLN4
label FE21 RDLN4
label FE2A CHKEOL
label FE2F SKIPSP
label FE38 WRTLIN
label FE47 WRTLN2
label FE4C A1INPCHR
label FE51 A1INPCH2
label FE79 A1OUTCHR
label FE7E OUTCH2
label FE88 CPYSTR
label FE8A CPYST2
label FE97 CPYST3
label FE9B CPYST4
label FE9D PRHX2SP
label FEA1 PRHXSP
label FEA8 PR2HX
label FEB0 PRHINB
label FEB4 PRLONB
label FEBF HEX4BIN
label FECB HEX2DEC
label FEE0 _CHEXBIN
label FEE2 HEXDEC
label FEF4 _CLRC
label FEF7 _SETC
label FEFA GETLN
label FF21 C4HEX
label FF23 BIN4HS
label FF27 C2HEX
label FF29 BIN2HS