https://tkkrlab.nl/w/index.php?title=Commodore64_VT100_Emulator&feed=atom&action=history
Commodore64 VT100 Emulator - Revision history
2020-09-12T12:42:49Z
Revision history for this page on the wiki
MediaWiki 1.24.6
https://tkkrlab.nl/w/index.php?title=Commodore64_VT100_Emulator&diff=4569&oldid=prev
Jawsper at 19:01, 12 June 2013
2013-06-12T19:01:51Z
<p></p>
<table class='diff diff-contentalign-left'>
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr style='vertical-align: top;'>
<td colspan='2' style="background-color: white; color:black; text-align: center;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black; text-align: center;">Revision as of 19:01, 12 June 2013</td>
</tr><tr><td colspan="2" class="diff-lineno">Line 4:</td>
<td colspan="2" class="diff-lineno">Line 4:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>|Skillz=BASIC, 6502 Asm</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>|Skillz=BASIC, 6502 Asm</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>|Status=Active</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>|Status=Active</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>|<del class="diffchange diffchange-inline">Sumary</del>=I'm writing a VT100 emulator for the C64.</div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>|<ins class="diffchange diffchange-inline">Summary</ins>=I'm writing a VT100 emulator for the C64.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>}}</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>}}</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Current code (BasEdit preprocessor needed):</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Current code (BasEdit preprocessor needed):</div></td></tr>
</table>
Jawsper
https://tkkrlab.nl/w/index.php?title=Commodore64_VT100_Emulator&diff=3512&oldid=prev
Peterbjornx at 18:52, 20 August 2012
2012-08-20T18:52:11Z
<p></p>
<p><b>New page</b></p><div>{{Project<br />
|ProjectName=Commodore64 VT100 Emulator<br />
|Owner=Peterbjornx<br />
|Skillz=BASIC, 6502 Asm<br />
|Status=Active<br />
|Sumary=I'm writing a VT100 emulator for the C64.<br />
}}<br />
Current code (BasEdit preprocessor needed):<br />
<nowiki><br />
goto test<br />
asciiputchar:<br />
rem asciiputchar<br />
if c<5 then return<br />
if c=6 then return<br />
<br />
if c<>5 goto not5<br />
if xc=1 then print# tf,ab$;<br />
if xc=0 then bc$=bc$+ab$<br />
return<br />
<br />
not5:<br />
if c<>7 goto not7<br />
gosub bell<br />
return<br />
<br />
not7:<br />
if c<>8 goto not8<br />
gosub backspace<br />
return<br />
<br />
not8:<br />
if c<>9 goto not9<br />
gosub horiztab<br />
return<br />
<br />
not9:<br />
if c<>10 goto not10<br />
gosub linefeed<br />
return<br />
<br />
not10:<br />
if c<>11 goto not11<br />
gosub linefeed<br />
return<br />
<br />
not11:<br />
if c<>12 goto not12<br />
gosub linefeed<br />
return<br />
<br />
not12:<br />
if c<>13 goto not13<br />
gosub carriagereturn<br />
return<br />
<br />
not13:<br />
if c<>14 goto not14<br />
cs=g1<br />
return<br />
<br />
not14:<br />
if c<>15 goto not15<br />
cs=g0<br />
return<br />
<br />
not15:<br />
if c=16 then return<br />
if c<>17 goto not17<br />
xc=1<br />
print# tf,bc$<br />
bc$=""<br />
return<br />
<br />
not17:<br />
if c=18 then return<br />
if c<>19 goto not19<br />
xc=0<br />
bc$=""<br />
return<br />
<br />
not19:<br />
if c<32 then return<br />
if c<65 goto endfunc<br />
if c=91 goto endfunc<br />
if c<>92 goto not92<br />
c=191<br />
goto endfunc<br />
<br />
not92:<br />
if c=93 goto endfunc<br />
if c=94 goto endfunc<br />
if c<>95 goto not95<br />
c=164<br />
goto endfunc<br />
<br />
not95:<br />
if c<>96 goto not96<br />
c=189<br />
goto endfunc<br />
<br />
not96:<br />
if c<>123 goto not123<br />
c=179<br />
goto endfunc<br />
<br />
not123:<br />
if c<>124 goto not124<br />
c=125<br />
goto endfunc<br />
<br />
not124:<br />
if c<>125 goto not125<br />
c=171<br />
goto endfunc<br />
<br />
not125:<br />
if c<>126 goto not126<br />
c=163<br />
goto endfunc<br />
<br />
not126:<br />
if c=127 then return<br />
if c<91 goto uppercase<br />
if c<123 goto lowercase<br />
print# of,chr$(28)+chr$(94)+chr$(fc);<br />
gosub pollcursor<br />
return<br />
<br />
lowercase:<br />
c=c-32<br />
goto endfunc<br />
<br />
uppercase:<br />
c=c+32<br />
goto endfunc<br />
<br />
endfunc:<br />
print# of,chr$(c);<br />
gosub pollcursor<br />
return<br />
<br />
bell:<br />
rem bell<br />
poke 54276,17<br />
for t=1 to 500: next<br />
poke 54276,16<br />
return<br />
<br />
backspace:<br />
rem backspace<br />
cx=cx-1<br />
if cx<0 then cx=0<br />
gosub setcursor<br />
return<br />
<br />
horiztab:<br />
rem horizontal tab<br />
ox=cx<br />
cx=cx-(INT(cx/ts)*ts)<br />
if cx<ox then cx=cx+ts<br />
if cx>39 then cx=39<br />
gosub setcursor<br />
return<br />
<br />
linefeed:<br />
rem line feed<br />
if nl=1 goto newline<br />
print# of, chr$(17)<br />
gosub pollcursor<br />
return<br />
<br />
newline:<br />
print# of, chr$(12)<br />
gosub pollcursor<br />
return<br />
<br />
carriagereturn:<br />
rem carriage return<br />
cx=0<br />
gosub setcursor<br />
return<br />
<br />
pollcursor:<br />
rem pollcursor<br />
cx=peek(211)<br />
cy=peek(214)<br />
return <br />
<br />
setcursor:<br />
rem setcursor<br />
poke 211,cx<br />
poke 214,cy<br />
return<br />
<br />
initbell:<br />
rem initbell<br />
for l=54272 to 54296: poke l,0:next<br />
poke 54296,15<br />
poke 54277,33<br />
poke 54278,129<br />
poke 54272,135<br />
poke 54273,33<br />
return<br />
<br />
initscreen:<br />
rem initscreen<br />
open of,3,0<br />
print# of, chr$(9);<br />
print# of, chr$(147);<br />
return<br />
<br />
initout:<br />
rem initout<br />
xc=1<br />
bc$=""<br />
fc=31<br />
cx=0<br />
cy=0<br />
g0=0<br />
g1=1<br />
cs=g0<br />
nl=1<br />
ts=8<br />
ab$="answerback"<br />
return<br />
<br />
init:<br />
rem init<br />
of=3<br />
gosub initout<br />
gosub initbell<br />
gosub initscreen<br />
gosub initser<br />
return<br />
<br />
initser:<br />
rem initser<br />
tf=2<br />
open tf,2,0,chr$(6)<br />
return<br />
<br />
test:<br />
rem test<br />
gosub init<br />
testloop:<br />
get# tf,c$<br />
if len(c)=0 goto testloop<br />
c=asc(c$)<br />
gosub asciiputchar<br />
goto testloop<br />
<br />
</nowiki></div>
Peterbjornx