Deriving a new dialect of Very Tiny Language from VTL-2 6800 version
リビジョン | d5f70f6a99936e63c643cf4d8ddfe2e4af244973 (tree) |
---|---|
日時 | 2022-09-25 21:56:23 |
作者 | Joel Matthew Rees <joel.rees@gmai...> |
コミッター | Joel Matthew Rees |
fixed comments
@@ -13,7 +13,11 @@ | ||
13 | 13 | * Copyright 2022, Joel Matthew Rees |
14 | 14 | * |
15 | 15 | * Modifications explained at |
16 | -* https://joels-programming-fun.blogspot.com/2022/08/trs-mc-10-assembly-lang-pt1-vtl-2.html | |
16 | +* https://joels-programming-fun.blogspot.com/2022/09/vtl-2-part-5-transliterating-to-6809.html | |
17 | +* | |
18 | +* Note that this is a travesty of a program, | |
19 | +* since it is 6809 code, but does not make any use of the 6809's added resources. | |
20 | +* | |
17 | 21 | * |
18 | 22 | * DEFINE LOCATIONS IN MONITOR |
19 | 23 | * INCH EQU $FF00 ; per VTL.ASM |
@@ -27,13 +31,13 @@ | ||
27 | 31 | * |
28 | 32 | * FOR SBC6800: |
29 | 33 | *BREAK EQU $1B ; BREAK KEY |
30 | -* For MC-10: | |
34 | +* For MC-10 and Color Computer: | |
31 | 35 | BREAK EQU $03 |
32 | 36 | * For exorsim |
33 | 37 | *ACIACS EQU $FCF4 ; exorcisor |
34 | 38 | *ACIADA EQU $FCF5 ; exorcisor |
35 | 39 | * |
36 | -* A few interpreter variables in the direct page won't hurt, said the snake oil vendor. | |
40 | +* A few interpreter variables in the direct page won't hurt, said the spider to the fly. | |
37 | 41 | * (See SNDDUR and PLYTMR in particular.) |
38 | 42 | * (Really need to move these. Use DP after all? IRQ, at least, uses extended mode addressing.) |
39 | 43 | * (Yes, I can hear voices of complaint that it's not as "tight" as it could be.) |
@@ -44,10 +48,10 @@ BREAK EQU $03 | ||
44 | 48 | * |
45 | 49 | * In .c10 format, the following as ORG and RMBs caused object code output, |
46 | 50 | * which will prevent the code from loading on the MC-10. |
47 | -* Changed to EQU for the MC10 and left this way for the CoCo. | |
51 | +* Changed to EQU for the MC10 and left this way for the initial CoCo code. | |
48 | 52 | * |
49 | 53 | * Does not really make specific use of the DP register. |
50 | -* ORG $C0 ; Move this according to your environment's needs. | |
54 | +* ORG $C0 ; Move this according to your environment's needs, but not on CoCo. | |
51 | 55 | * Change this to move the registers: |
52 | 56 | DPBASE EQU $C4 ; PIA mask at $C2? Avoid it, anyway. |
53 | 57 | * PARSET RMB 2 ; Instead of SAVE0 in TERM/NXTRM |
@@ -81,15 +85,15 @@ DST EQU SRC+2 | ||
81 | 85 | STKMRK EQU DST+2 ; to restore the stack on each pass. |
82 | 86 | DPALLOC EQU STKMRK+2 ; total storage declared in the direct page |
83 | 87 | * |
84 | -*******!!!!!! Check that we have avoided $00E2, as well, since it is used as PLYTMR by an interrupt routine. | |
85 | -* Also, $008D is used as SNDDUR by BASIC. | |
88 | +*******!!!!!! CoCo: Check that we have avoided $00E2, as well, since it is used as PLYTMR by an interrupt routine. | |
89 | +* CoCo: Also, $008D is used as SNDDUR by BASIC. | |
86 | 90 | * |
87 | 91 | * SET ASIDE FOUR BYTES FOR USER |
88 | 92 | * DEFINED INTERUPT ROUTINE IF NEEDED |
89 | 93 | ZERO EQU $1600 ; Dodge BASIC and video use RAM. |
90 | 94 | ORG ZERO |
91 | 95 | * ZERO probably no longer needs to be at even $100, but we'll put it there for good luck. |
92 | - RMB 4 ; INTERUPT VECTOR (probably unnecessary?) | |
96 | + RMB 4 ; INTERUPT VECTOR (probably not unnecessary? Implicit non-use in interpreter.) | |
93 | 97 | AT RMB 2 ; CANCEL & C-R |
94 | 98 | * |
95 | 99 | * GENERAL PURPOSE STORRGE |