Everything on the C64 is harder and more complicated to code for, but all the same results are possible. This allows exact match graphics and logic: BITMAP char graphics creation: For TI-99 to C64 Graphics, convert all HEX values to DEC values Use these values against the C64 conversion routine. Example Code: 00 rem copy rom routine 105 for i=0 to 26: read x: poke 828+i,x: next i 110 data 169,000,160,208,133,095,132,096 : rem LDA #0; LDY #$D0; STA 95, STY 96 115 data 169,000,160,224,133,090,132,091 : rem LDA #0; LDY #$E0; STA 90; STY 91 120 data 169,000,160,064,133,088,132,089 : rem LDA #0; LDY #$40; STA 88; STY 89 125 data 076,191,163 : rem JMP $A3BF 130 rem COPY $D000-$DFFF -> $3000-$3FFF 135 rem move char set rom into ram 140 poke 56334,peek(56334) and 254 : rem INTERRUPT OFF 145 poke 1,peek(1) and 251 : rem CHAR SET ROM ON 150 sys 828 : rem START COPY 155 poke 1,peek(1) or 4 : rem CHAR SET ROM OFF 160 poke 56334,peek(56334) or 1 : rem INTERRUPT ON 165 poke 53272,peek(53272) and 240 or 12 : rem CHAR SET RAM AT $3000 170 rem rewrite char [ 175 for a=12504 to 12511: read ze: poke a,ze: poke a+1024,255-ze: next a 180 rem rewrite char # 185 for a=12568 to 12575: read ze: poke a,ze: poke a+1024,255-ze: next a 190 rem rewrite char & 195 for a=12592 to 12599: read ze: poke a,ze: poke a+1024,255-ze: next a 200 rem rewrite char ] 205 for a=12520 to 12527: read ze: poke a,ze: poke a+1024,255-ze: next a 210 rem rewrite char ( 215 for a=12608 to 12615: read ze: poke a,ze: poke a+1024,255-ze: next a 220 rem rewrite char ! 225 for a=12552 to 12559: read ze: poke a,ze: poke a+1024,255-ze: next a 230 rem rewrite char % 235 for a=12584 to 12591: read ze: poke a,ze: poke a+1024,255-ze: next a 240 rem rewrite char ) 245 for a=12616 to 12623: read ze: poke a,ze: poke a+1024,255-ze: next a 700 data 15,16,32,64,255,128,128,128 710 data 128,128,128,128,128,128,128,128 720 data 128,128,128,128,128,128,128,255 730 data 255,0,0,0,255,0,0,0 740 data 0,0,0,0,0,0,0,255 750 data 255,3,5,9,241,17,17,17 760 data 17,17,17,17,17,17,17,17 770 data 17,17,17,17,18,20,24,240
Displaying Text and Graphics: To simulate a "DISPLAY AT" or "CALL HCHAR" functions, you can use the following methods: POKE Coordinates: You can set the cursor position by poking the row (Y) and column (X) values directly into memory before printing. Syntax: POKE 214,Y: POKE 211,X: SYS 58732: PRINT "YOUR TEXT" Note: POKE 214 sets the row (0–24) and POKE 211 sets the column (0–39). SYS 58732 (or a single empty PRINT in some versions) updates the internal cursor pointer.