mirror of https://github.com/wwarthen/RomWBW.git
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
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
|
|
|