You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

338 lines
11 KiB

5 PRINT "Simple VIDEO test for N8-2511; I/O Base is assumed as 128"
10 BASE=128
20 DATAP=BASE+24
30 CMDP=BASE+25
40 GOTO 140
50 PRINT "Let's set VDP write address to #0000"
60 OUT CMDP,0
70 OUT CMDP,64 :REM 40H
80 REM NOW LET's clear first 16Kb of VDP memory
90 PRINT "NOW LET's clear first 16Kb of VDP memory"
100 FOR A=0 TO 16383
110 REM PRINT "ADDR:";HEX$(A);CHR$(13);
120 OUT DATAP,0
130 NEXT A
140 PRINT "Now it is time to set up VDP registers"
160 REM Register 0 to #0
170 REM Set mode selection bit M3 (maybe also M4 & M5) to zero and
180 REM disable external video & horizontal interrupt
190 OUT CMDP,0
200 OUT CMDP,128 :REM 80h
210 REM Register 1 to #50
220 PRINT "Select 40 column mode, enable screen and disable vertical interrupt"
230 OUT CMDP,80 :REM 50h
240 OUT CMDP,129 :REM 81h
250 REM Register 2 to #0
260 PRINT "Set pattern name table to #0000"
270 OUT CMDP,0
280 OUT CMDP,130 :REM 82H
290 REM REGISTER 3 IS IGNORED AS 40 COLUMN MODE DOES NOT NEED COLOR TABLE
300 REM Register 4 to #1
310 PRINT "SET PATTERN GENERATOR TABLE TO #800"
320 OUT CMDP,1
330 OUT CMDP,132 :REM 84h
340 REM Registers 5 (Sprite attribute) & 6 (Sprite pattern) are ignored
350 REM as 40 column mode does not have sprites
360 REM Register 7 to #F0
370 PRINT "Set colors to white on black"
380 OUT CMDP,240 :REM F0h
390 OUT CMDP,135 :REM 87h
400 REM Let's set VDP write address to #800 so, that we can write
410 REM character set to memory
430 OUT CMDP,0
440 OUT CMDP,72 :REM 48h
450 REM Create a character set
460 PRINT "Create a character set"
470 FOR C=0 TO 255
480 FOR D=0 TO 7
500 READ V
510 OUT DATAP,V
520 NEXT D
530 NEXT C
540 REM Let's set write address to start of name table
550 PRINT "LET's put characters to screen"
555 D=0
560 OUT CMDP,0
570 OUT CMDP,64 :REM 40h
580 REM LET's put characters to screen
600 FOR C=0 TO ((40 * 24) - 1)
610 OUT DATAP,D
620 D=D+1
630 IF D=128 THEN D=0
640 NEXT C
700 BASE=128
710 DATAP=BASE+24
720 CMDP=BASE+25
730 OUT CMDP,0
740 OUT CMDP,0
750 FOR C=0 TO 16
760 V = INP(DATAP)
770 PRINT HEX$(V)
780 NEXT C
790 STOP
800 BASE=128
810 DATAP=BASE+24
820 CMDP=BASE+25
830 FOR C=0 TO 255
840 PRINT HEX$(C)
850 OUT CMDP,C
860 OUT CMDP,135 :REM REGISTER 7
870 INPUT "<RET> TO CONTINUE",A$
880 NEXT C
890 END
10000 DATA 0,0,0,0,0,0,0,0
10001 DATA 0,0,0,60,60,48,48,48
10002 DATA 0,0,0,240,240,48,48,48
10003 DATA 48,48,48,60,60,0,0,0
10004 DATA 48,48,48,240,240,0,0,0
10005 DATA 48,48,48,48,48,48,48,48
10006 DATA 0,0,0,255,255,0,0,0
10007 DATA 0,32,112,248,112,32,0,0
10008 DATA 248,216,136,0,136,216,248,0
10009 DATA 0,0,0,0,0,0,0,0
10010 DATA 0,0,0,0,0,0,0,0
10011 DATA 24,24,32,96,144,96,0,0
10012 DATA 32,80,32,32,112,32,0,0
10013 DATA 0,0,0,0,0,0,0,0
10014 DATA 0,0,0,0,0,0,0,0
10015 DATA 168,80,80,216,80,80,168,0
10016 DATA 48,48,48,252,252,48,48,48
10017 DATA 16,48,112,240,112,48,16,0
10018 DATA 32,112,32,32,32,112,32,0
10019 DATA 80,80,80,80,0,80,0,0
10020 DATA 120,168,168,104,40,40,0,0
10021 DATA 48,48,48,252,252,0,0,0
10022 DATA 0,0,0,252,252,48,48,48
10023 DATA 48,48,48,240,240,48,48,48
10024 DATA 32,112,32,32,32,32,32,32
10025 DATA 48,48,48,60,60,48,48,48
10026 DATA 0,16,24,252,24,16,0,0
10027 DATA 0,32,96,252,96,32,0,0
10028 DATA 0,0,0,0,0,0,0,0
10029 DATA 0,0,0,0,0,0,0,0
10030 DATA 0,0,0,0,0,0,0,0
10031 DATA 0,0,0,0,0,0,0,0
10032 DATA 0,0,0,0,0,0,0,0
10033 DATA 48,120,120,48,0,48,0,0
10034 DATA 216,216,80,0,0,0,0,0
10035 DATA 72,72,252,72,72,252,72,72
10036 DATA 32,120,160,120,36,248,32,0
10037 DATA 0,200,208,32,88,152,0,0
10038 DATA 48,72,72,80,96,144,120,0
10039 DATA 48,48,64,0,0,0,0,0
10040 DATA 16,32,32,32,32,32,16,0
10041 DATA 32,16,16,16,16,16,32,0
10042 DATA 32,168,112,248,112,168,32,0
10043 DATA 0,32,32,248,32,32,0,0
10044 DATA 0,0,0,0,0,48,48,64
10045 DATA 0,0,0,252,0,0,0,0
10046 DATA 0,0,0,0,0,48,48,0
10047 DATA 4,8,16,32,64,128,0,0
10048 DATA 112,152,168,168,168,200,112,0
10049 DATA 32,96,32,32,32,32,248,0
10050 DATA 32,80,16,32,64,128,248,0
10051 DATA 112,136,8,112,8,136,112,0
10052 DATA 48,80,144,248,16,16,16,0
10053 DATA 248,128,128,240,8,136,112,0
10054 DATA 56,64,128,240,136,136,112,0
10055 DATA 248,8,16,32,32,32,32,0
10056 DATA 112,136,136,112,136,136,112,0
10057 DATA 112,136,136,120,8,136,112,0
10058 DATA 0,48,48,0,48,48,0,0
10059 DATA 0,48,48,0,48,48,96,0
10060 DATA 16,32,64,128,64,32,16,0
10061 DATA 0,0,252,0,252,0,0,0
10062 DATA 64,32,16,8,16,32,64,0
10063 DATA 112,136,8,48,32,0,32,0
10064 DATA 112,136,184,176,128,128,112,0
10065 DATA 32,80,136,248,136,136,136,0
10066 DATA 240,72,72,112,72,72,240,0
10067 DATA 112,136,128,128,128,136,112,0
10068 DATA 240,72,72,72,72,72,240,0
10069 DATA 248,136,128,224,128,136,248,0
10070 DATA 248,136,128,240,128,128,128,0
10071 DATA 112,136,128,184,136,136,112,0
10072 DATA 136,136,136,248,136,136,136,0
10073 DATA 248,32,32,32,32,32,248,0
10074 DATA 28,8,8,8,8,136,112,0
10075 DATA 136,144,160,192,160,144,136,0
10076 DATA 128,128,128,128,128,136,248,0
10077 DATA 136,216,168,136,136,136,136,0
10078 DATA 136,200,168,168,168,152,136,0
10079 DATA 112,136,136,136,136,136,112,0
10080 DATA 240,136,136,240,128,128,128,0
10081 DATA 112,136,136,136,168,152,120,4
10082 DATA 240,136,136,240,160,144,136,0
10083 DATA 112,136,64,32,16,136,112,0
10084 DATA 248,32,32,32,32,32,112,0
10085 DATA 136,136,136,136,136,136,112,0
10086 DATA 136,136,136,80,80,80,32,0
10087 DATA 136,136,136,168,168,168,80,0
10088 DATA 136,136,80,32,80,136,136,0
10089 DATA 136,136,80,32,32,32,32,0
10090 DATA 248,136,16,32,64,136,248,0
10091 DATA 120,64,64,64,64,64,120,0
10092 DATA 0,128,64,32,16,8,0,0
10093 DATA 120,8,8,8,8,8,120,0
10094 DATA 32,80,136,0,0,0,0,0
10095 DATA 0,0,0,0,0,0,252,0
10096 DATA 96,96,16,0,0,0,0,0
10097 DATA 0,0,240,8,120,136,112,0
10098 DATA 128,128,128,240,136,136,240,0
10099 DATA 0,0,0,112,128,128,112,0
10100 DATA 8,8,8,120,136,136,120,0
10101 DATA 0,0,112,136,248,128,112,0
10102 DATA 0,48,72,224,64,64,64,0
10103 DATA 0,0,56,72,72,56,8,112
10104 DATA 0,128,128,176,200,136,136,0
10105 DATA 0,0,32,0,96,32,112,0
10106 DATA 0,8,0,24,8,8,72,48
10107 DATA 128,128,144,160,192,160,144,0
10108 DATA 32,32,32,32,32,32,32,0
10109 DATA 0,0,0,80,168,168,136,0
10110 DATA 0,0,0,176,200,136,136,0
10111 DATA 0,0,0,112,136,136,112,0
10112 DATA 0,0,112,72,72,112,64,64
10113 DATA 0,96,56,72,72,56,8,8
10114 DATA 0,0,0,176,200,128,128,0
10115 DATA 0,0,96,128,96,16,96,0
10116 DATA 0,0,64,224,64,64,32,0
10117 DATA 0,0,0,144,144,144,104,0
10118 DATA 0,0,0,136,136,80,32,0
10119 DATA 0,0,0,136,168,168,80,0
10120 DATA 0,0,0,72,48,48,72,0
10121 DATA 0,0,136,80,32,64,128,0
10122 DATA 0,0,248,16,32,64,248,0
10123 DATA 16,32,32,64,32,32,16,0
10124 DATA 32,32,32,0,32,32,32,0
10125 DATA 64,32,32,16,32,32,64,0
10126 DATA 108,144,0,0,0,0,0,0
10127 DATA 112,80,80,80,80,80,112,0
10128 DATA 0,0,0,0,0,0,0,0
10129 DATA 0,0,0,0,0,0,0,0
10130 DATA 0,0,0,0,0,0,0,0
10131 DATA 0,0,0,0,0,0,0,0
10132 DATA 0,0,0,0,0,0,0,0
10133 DATA 0,0,0,0,0,0,0,0
10134 DATA 0,0,0,0,0,0,0,0
10135 DATA 0,0,0,0,0,0,0,0
10136 DATA 0,0,0,0,0,0,0,0
10137 DATA 0,0,0,0,0,0,0,0
10138 DATA 0,0,0,0,0,0,0,0
10139 DATA 0,0,0,0,0,0,0,0
10140 DATA 0,0,0,0,0,0,0,0
10141 DATA 0,0,0,0,0,0,0,0
10142 DATA 0,0,0,0,0,0,0,0
10143 DATA 0,0,0,0,0,0,0,0
10144 DATA 0,0,0,0,0,0,0,0
10145 DATA 0,0,0,0,0,0,0,0
10146 DATA 0,0,0,0,0,0,0,0
10147 DATA 0,0,0,0,0,0,0,0
10148 DATA 0,0,0,0,0,0,0,0
10149 DATA 0,0,0,0,0,0,0,0
10150 DATA 0,0,0,0,0,0,0,0
10151 DATA 0,0,0,0,0,0,0,0
10152 DATA 0,0,0,0,0,0,0,0
10153 DATA 0,0,0,0,0,0,0,0
10154 DATA 0,0,0,0,0,0,0,0
10155 DATA 0,0,0,0,0,0,0,0
10156 DATA 0,0,0,0,0,0,0,0
10157 DATA 0,0,0,0,0,0,0,0
10158 DATA 0,0,0,0,0,0,0,0
10159 DATA 0,0,0,0,0,0,0,0
10160 DATA 32,64,240,8,120,136,112,0
10161 DATA 16,32,0,96,32,32,248,0
10162 DATA 16,32,0,112,136,136,112,0
10163 DATA 16,32,0,136,136,136,116,0
10164 DATA 16,32,0,176,200,136,136,0
10165 DATA 16,32,0,200,168,152,136,0
10166 DATA 112,136,136,124,0,252,0,0
10167 DATA 112,136,136,112,0,252,0,0
10168 DATA 32,0,32,32,64,136,112,0
10169 DATA 0,0,0,0,252,128,128,128
10170 DATA 0,0,0,0,252,4,4,4
10171 DATA 136,144,168,84,136,28,0,0
10172 DATA 136,144,168,88,184,8,0,0
10173 DATA 48,0,48,120,120,48,0,0
10174 DATA 20,40,80,160,80,40,20,0
10175 DATA 160,80,40,20,40,80,160,0
10176 DATA 84,170,84,170,84,170,84,170
10177 DATA 170,84,170,84,170,84,170,84
10178 DATA 182,108,218,182,108,218,182,108
10179 DATA 24,24,24,24,24,24,24,24
10180 DATA 24,24,24,24,248,24,24,24
10181 DATA 24,24,24,248,24,248,24,24
10182 DATA 108,108,108,108,236,108,108,108
10183 DATA 0,0,0,0,252,108,108,108
10184 DATA 0,0,0,252,108,236,108,108
10185 DATA 108,108,236,12,236,108,108,108
10186 DATA 108,108,108,108,108,108,108,108
10187 DATA 0,0,252,14,238,108,108,108
10188 DATA 108,108,236,12,252,0,0,0
10189 DATA 100,100,252,0,0,0,0,0
10190 DATA 48,48,240,48,48,240,0,0
10191 DATA 0,0,0,0,240,48,48,48
10192 DATA 48,48,48,48,60,0,0,0
10193 DATA 48,48,48,48,252,0,0,0
10194 DATA 0,0,0,0,252,48,48,48
10195 DATA 48,48,48,48,60,48,48,48
10196 DATA 0,0,0,0,252,0,0,0
10197 DATA 48,48,48,48,252,48,48,48
10198 DATA 48,48,60,48,60,48,48,48
10199 DATA 216,216,220,216,216,216,216,216
10200 DATA 216,216,216,220,192,252,0,0
10201 DATA 0,0,0,252,192,220,216,216
10202 DATA 216,216,216,220,192,0,252,0
10203 DATA 0,0,0,0,0,0,252,0
10204 DATA 216,216,216,220,192,220,216,216
10205 DATA 0,0,0,252,0,252,0,0
10206 DATA 216,216,216,220,0,220,216,216
10207 DATA 48,48,48,252,0,0,252,0
10208 DATA 216,216,216,252,0,0,0,0
10209 DATA 0,0,252,0,0,252,48,48
10210 DATA 0,0,0,0,0,252,216,216
10211 DATA 216,216,216,252,0,0,0,0
10212 DATA 48,48,48,60,48,48,60,0
10213 DATA 0,0,0,62,48,62,48,48
10214 DATA 0,0,0,0,0,252,216,216
10215 DATA 216,216,216,216,220,216,216,216
10216 DATA 48,48,252,0,0,252,48,48
10217 DATA 48,48,48,240,0,0,0,0
10218 DATA 0,0,0,60,48,48,48,48
10219 DATA 252,252,252,252,252,252,252,252
10220 DATA 0,0,0,252,252,252,192,192
10221 DATA 192,192,192,192,192,192,192,192
10222 DATA 12,12,12,12,12,12,12,12
10223 DATA 12,12,12,12,252,252,252,0
10224 DATA 0,0,0,104,144,144,104,0
10225 DATA 112,136,136,176,136,136,240,64
10226 DATA 240,144,128,128,128,128,128,0
10227 DATA 248,80,80,80,80,72,0,0
10228 DATA 248,136,64,32,64,136,248,0
10229 DATA 0,0,0,124,136,136,112,0
10230 DATA 0,0,0,136,136,136,112,128
10231 DATA 0,0,116,152,16,16,28,0
10232 DATA 252,16,56,68,56,16,252,0
10233 DATA 48,204,204,252,204,204,56,0
10234 DATA 120,132,132,132,72,72,132,0
10235 DATA 60,64,56,68,68,68,56,0
10236 DATA 0,0,108,146,146,108,0,0
10237 DATA 0,0,0,56,88,104,112,0
10238 DATA 56,64,128,248,128,64,56,0
10239 DATA 0,0,48,204,204,204,204,0
10240 DATA 252,0,0,252,0,0,252,0
10241 DATA 16,16,124,16,16,0,254,0
10242 DATA 32,16,8,16,32,0,254,0
10243 DATA 16,32,64,32,16,0,254,0
10244 DATA 24,52,48,48,48,48,48,48
10245 DATA 48,48,48,48,48,48,176,112
10246 DATA 48,48,0,252,0,48,48,0
10247 DATA 0,100,152,0,100,152,0,0
10248 DATA 56,68,68,56,0,0,0,0
10249 DATA 0,56,56,0,0,0,0,0
10250 DATA 0,0,56,0,0,0,0,0
10251 DATA 14,8,8,72,40,24,8,0
10252 DATA 0,0,0,176,72,72,72,0
10253 DATA 0,0,240,60,64,128,248,0
10254 DATA 252,252,252,252,252,252,252,252
10255 DATA 0,0,0,0,0,0,0,0