00000000: 85 81 9F 2F 2A 20 D4 45 53 54 20 50 52 4F 47 52 |.../* .EST PROGR|
00000010: 41 4D 4D 20 57 49 54 48 20 54 48 45 20 53 55 50 |AMM WITH THE SUP|
00000020: 45 52 20 C3 20 43 4F 4D 50 49 4C 45 52 20 2A 2F |ER . COMPILER */|
00000030: 0D 1C 0D 9E 23 49 4E 43 4C 55 44 45 20 22 53 54 |....#INCLUDE "ST|
00000040: 44 49 4F 2E 48 22 0D 9E 23 49 4E 43 4C 55 44 45 |DIO.H"..#INCLUDE|
00000050: 20 22 41 4C 4C 4F 43 41 54 49 4F 4E 2E 43 22 0D | "ALLOCATION.C".|
00000060: 9E 23 49 4E 43 4C 55 44 45 20 22 57 49 4E 44 4F |.#INCLUDE "WINDO|
00000070: 57 53 32 2E 43 22 0D 1C 0D 1C 0D 1C 53 54 41 54 |WS2.C"......STAT|
00000080: 49 43 20 42 59 54 45 20 50 41 54 54 45 52 4E 5B |IC BYTE PATTERN[|
00000090: 34 31 5D 20 3D 20 DB 20 31 30 32 2C 31 30 32 2C |41] = . 102,102,|
000000A0: 31 30 32 2C 31 30 32 2C 31 30 32 2C 31 30 32 2C |102,102,102,102,|
000000B0: 31 30 32 2C 31 30 32 2C 0D 1C 20 20 20 20 20 20 |102,102,.. |
000000C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
000000D0: 20 20 20 20 20 20 31 30 32 2C 31 30 32 2C 31 30 | 102,102,10|
000000E0: 32 2C 31 30 32 2C 31 30 32 2C 31 30 32 2C 31 30 |2,102,102,102,10|
000000F0: 32 2C 31 30 32 2C 0D 1C 20 20 20 20 20 20 20 20 |2,102,.. |
00000100: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00000110: 20 20 20 20 31 30 32 2C 31 30 32 2C 31 30 32 2C | 102,102,102,|
00000120: 31 30 32 2C 31 30 32 2C 31 30 32 2C 31 30 32 2C |102,102,102,102,|
00000130: 31 30 32 2C 0D 1C 20 20 20 20 20 20 20 20 20 20 |102,.. |
00000140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00000150: 20 20 31 30 32 2C 31 30 32 2C 31 30 32 2C 31 30 | 102,102,102,10|
00000160: 32 2C 31 30 32 2C 31 30 32 2C 31 30 32 2C 31 30 |2,102,102,102,10|
00000170: 32 2C 0D 1C 20 20 20 20 20 20 20 20 20 20 20 20 |2,.. |
00000180: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00000190: 31 30 32 2C 31 30 32 2C 31 30 32 2C 31 30 32 2C |102,102,102,102,|
000001A0: 31 30 32 2C 31 30 32 2C 31 30 32 2C 31 30 32 2C |102,102,102,102,|
000001B0: 30 20 DD 3B 0D 1C 0D 1C 53 54 41 54 49 43 20 42 |0 .;....STATIC B|
000001C0: 59 54 45 20 42 41 43 4B 43 4F 4C 5B 34 31 5D 20 |YTE BACKCOL[41] |
000001D0: 3D 20 DB 20 36 2C 36 2C 36 2C 36 2C 36 2C 36 2C |= . 6,6,6,6,6,6,|
000001E0: 36 2C 36 2C 36 2C 36 2C 0D 1C 20 20 20 20 20 20 |6,6,6,6,.. |
000001F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00000200: 20 20 20 20 20 20 36 2C 36 2C 36 2C 36 2C 36 2C | 6,6,6,6,6,|
00000210: 36 2C 36 2C 36 2C 36 2C 36 2C 0D 1C 20 20 20 20 |6,6,6,6,6,.. |
00000220: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00000230: 20 20 20 20 20 20 20 20 36 2C 36 2C 36 2C 36 2C | 6,6,6,6,|
00000240: 36 2C 36 2C 36 2C 36 2C 36 2C 36 2C 0D 1C 20 20 |6,6,6,6,6,6,.. |
00000250: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00000260: 20 20 20 20 20 20 20 20 20 20 36 2C 36 2C 36 2C | 6,6,6,|
00000270: 36 2C 36 2C 36 2C 36 2C 36 2C 36 2C 36 2C 30 20 |6,6,6,6,6,6,6,0 |
00000280: DD 3B 0D 1C 0D 1C 0D 1C 0D 1C 4D 41 49 4E 28 29 |.;........MAIN()|
00000290: 0D 1C 0D 1C DB 0D 1C 0D 1C 49 4E 54 20 20 4C 4F |.........INT LO|
000002A0: 4F 50 3B 0D 1C 43 48 41 52 20 43 3B 0D 1C 0D 1C |OP;..CHAR C;....|
000002B0: 43 48 41 52 20 2A 53 43 52 41 44 52 20 3D 20 30 |CHAR *SCRADR = 0|
000002C0: 58 45 30 30 30 3B 0D 1C 43 48 41 52 20 2A 43 4F |XE000;..CHAR *CO|
000002D0: 4C 41 44 52 20 3D 20 35 35 32 39 36 3B 0D 1C 42 |LADR = 55296;..B|
000002E0: 59 54 45 20 2A 42 4F 52 44 45 52 20 3D 20 35 33 |YTE *BORDER = 53|
000002F0: 32 38 30 3B 0D 1C 42 59 54 45 20 2A 53 43 52 45 |280;..BYTE *SCRE|
00000300: 45 4E 20 3D 20 35 33 32 38 31 3B 0D 1C 42 59 54 |EN = 53281;..BYT|
00000310: 45 20 2A 43 4F 4C 4F 55 52 20 3D 20 20 20 36 34 |E *COLOUR = 64|
00000320: 36 3B 0D 1C 0D 1C 0D 1C 20 20 20 20 20 43 4C 52 |6;...... CLR|
00000330: 53 43 52 3B 0D 1C 0D 1C 20 20 20 20 20 2A 42 4F |SCR;.... *BO|
00000340: 52 44 45 52 20 3D 20 36 3B 0D 1C 20 20 20 20 20 |RDER = 6;.. |
00000350: 2A 53 43 52 45 45 4E 20 3D 20 33 3B 0D 1C 20 20 |*SCREEN = 3;.. |
00000360: 20 20 20 2A 43 4F 4C 4F 55 52 20 3D 20 36 3B 0D | *COLOUR = 6;.|
00000370: 1C 0D 9F 20 20 2F 2A 20 46 49 4C 4C 20 42 41 43 |... /* FILL BAC|
00000380: 4B 47 52 4F 55 4E 44 20 50 41 54 54 45 52 4E 20 |KGROUND PATTERN |
00000390: 2A 2F 0D 1C 0D 1C 20 20 20 20 20 46 4F 52 20 28 |*/.... FOR (|
000003A0: 4C 4F 4F 50 3D 30 3B 4C 4F 4F 50 3C 32 35 3B 4C |LOOP=0;LOOP<25;L|
000003B0: 4F 4F 50 2B 2B 2C 43 4F 4C 41 44 52 2B 3D 34 30 |OOP++,COLADR+=40|
000003C0: 2C 53 43 52 41 44 52 2B 3D 34 30 29 0D 1C 20 20 |,SCRADR+=40).. |
000003D0: 20 20 20 20 20 DB 0D 1C 20 20 20 20 20 20 20 20 | ... |
000003E0: 20 4D 4F 56 45 28 53 43 52 41 44 52 2C 34 30 2C | MOVE(SCRADR,40,|
000003F0: 26 50 41 54 54 45 52 4E 5B 30 5D 2C 35 33 29 3B |&PATTERN[0],53);|
00000400: 0D 1C 20 20 20 20 20 20 20 20 20 4D 4F 56 45 28 |.. MOVE(|
00000410: 43 4F 4C 41 44 52 2C 34 30 2C 26 42 41 43 4B 43 |COLADR,40,&BACKC|
00000420: 4F 4C 5B 30 5D 2C 35 33 29 3B 0D 1C 20 20 20 20 |OL[0],53);.. |
00000430: 20 20 20 DD 0D 1C 0D 1C 20 20 20 20 20 49 46 20 | ..... IF |
00000440: 28 4F 50 45 4E 57 49 4E 28 35 2C 35 2C 32 30 2C |(OPENWIN(5,5,20,|
00000450: 33 35 29 29 0D 1C 20 20 20 20 20 20 DB 0D 1C 20 |35)).. ... |
00000460: 20 20 20 20 20 20 20 43 55 52 53 4F 52 28 37 2C | CURSOR(7,|
00000470: 37 29 3B 0D 1C 0D 1C 20 20 20 20 20 20 20 20 50 |7);.... P|
00000480: 55 54 53 28 22 C3 36 34 20 57 49 4E 44 4F 57 53 |UTS(".64 WINDOWS|
00000490: 20 42 59 20 50 2E 48 45 44 4C 49 4E 22 2C D3 D4 | BY P.HEDLIN",..|
000004A0: C4 C9 CF 29 3B 0D 1C 0D 1C 20 20 20 20 20 20 20 |...);.... |
000004B0: 20 49 46 20 28 4F 50 45 4E 57 49 4E 28 31 39 2C | IF (OPENWIN(19,|
000004C0: 30 2C 32 31 2C 31 35 29 29 0D 1C 20 20 20 20 20 |0,21,15)).. |
000004D0: 20 20 20 20 DB 0D 1C 20 20 20 20 20 20 20 20 20 | ... |
000004E0: 20 20 43 55 52 53 4F 52 28 32 30 2C 31 29 3B 0D | CURSOR(20,1);.|
000004F0: 1C 0D 1C 20 20 20 20 20 20 20 20 20 20 20 50 55 |... PU|
00000500: 54 53 28 22 50 52 45 53 53 20 41 4E 59 20 4B 45 |TS("PRESS ANY KE|
00000510: 59 2E 22 2C D3 D4 C4 C9 CF 29 3B 0D 1C 0D 1C 20 |Y.",.....);.... |
00000520: 20 20 20 20 20 20 20 20 20 20 49 4E 4B 45 59 28 | INKEY(|
00000530: D3 D4 C4 C9 CF 29 3B 0D 1C 0D 1C 20 20 20 20 20 |.....);.... |
00000540: 20 20 20 20 20 20 43 4C 4F 53 45 57 49 4E 28 29 | CLOSEWIN()|
00000550: 3B 0D 1C 20 20 20 20 20 20 20 20 20 DD 0D 1C 20 |;.. ... |
00000560: 20 20 20 20 20 20 20 49 46 20 28 4F 50 45 4E 57 | IF (OPENW|
00000570: 49 4E 28 33 2C 31 35 2C 31 35 2C 33 37 29 29 0D |IN(3,15,15,37)).|
00000580: 1C 20 20 20 20 20 20 20 20 20 DB 0D 1C 20 20 20 |. ... |
00000590: 20 20 20 20 20 20 20 20 46 4F 52 20 28 4C 4F 4F | FOR (LOO|
000005A0: 50 3D 30 3B 4C 4F 4F 50 3C 31 32 3B 4C 4F 4F 50 |P=0;LOOP<12;LOOP|
000005B0: 2B 2B 29 0D 1C 20 20 20 20 20 20 20 20 20 20 20 |++).. |
000005C0: 20 20 DB 0D 1C 20 20 20 20 20 20 20 20 20 20 20 | ... |
000005D0: 20 20 20 20 43 55 52 53 4F 52 28 31 34 2C 31 36 | CURSOR(14,16|
000005E0: 29 3B 0D 1C 20 20 20 20 20 20 20 20 20 20 20 20 |);.. |
000005F0: 20 20 20 50 55 54 53 28 22 57 49 4E 44 4F 57 20 | PUTS("WINDOW |
00000600: 53 43 52 4F 4C 4C 49 4E 47 20 49 4E 2E 2E 22 2C |SCROLLING IN..",|
00000610: D3 D4 C4 C9 CF 29 3B 0D 1C 20 20 20 20 20 20 20 |.....);.. |
00000620: 20 20 20 20 20 20 20 20 53 43 52 4F 4C 4C 57 49 | SCROLLWI|
00000630: 4E 28 D5 D0 29 3B 0D 1C 20 20 20 20 20 20 20 20 |N(..);.. |
00000640: 20 20 20 20 20 DD 0D 1C 0D 1C 20 20 20 20 20 20 | ..... |
00000650: 20 20 20 20 20 49 4E 4B 45 59 28 D3 D4 C4 C9 CF | INKEY(.....|
00000660: 29 3B 0D 1C 0D 1C 20 20 20 20 20 20 20 20 20 20 |);.... |
00000670: 20 46 4F 52 20 28 4C 4F 4F 50 3D 30 3B 4C 4F 4F | FOR (LOOP=0;LOO|
00000680: 50 3C 31 32 3B 4C 4F 4F 50 2B 2B 29 0D 1C 20 20 |P<12;LOOP++).. |
00000690: 20 20 20 20 20 20 20 20 20 20 20 DB 0D 1C 20 20 | ... |
000006A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 43 55 52 | CUR|
000006B0: 53 4F 52 28 34 2C 31 36 29 3B 0D 1C 20 20 20 20 |SOR(4,16);.. |
000006C0: 20 20 20 20 20 20 20 20 20 20 20 50 55 54 53 28 | PUTS(|
000006D0: 22 42 4F 54 48 20 44 49 52 45 43 54 49 4F 4E 53 |"BOTH DIRECTIONS|
000006E0: 2E 2E 2E 2E 2E 2E 22 2C D3 D4 C4 C9 CF 29 3B 0D |......",.....);.|
000006F0: 1C 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |. |
00000700: 53 43 52 4F 4C 4C 57 49 4E 28 C4 CF D7 CE 29 3B |SCROLLWIN(....);|
00000710: 0D 1C 20 20 20 20 20 20 20 20 20 20 20 20 20 DD |.. .|
00000720: 0D 1C 20 20 20 20 20 20 20 20 20 20 20 49 4E 4B |.. INK|
00000730: 45 59 28 D3 D4 C4 C9 CF 29 3B 0D 1C 0D 1C 20 20 |EY(.....);.... |
00000740: 20 20 20 20 20 20 20 20 20 43 4C 45 41 52 57 49 | CLEARWI|
00000750: 4E 28 29 3B 0D 1C 0D 1C 20 20 20 20 20 20 20 20 |N();.... |
00000760: 20 20 20 49 4E 4B 45 59 28 D3 D4 C4 C9 CF 29 3B | INKEY(.....);|
00000770: 0D 1C 0D 1C 20 20 20 20 20 20 20 20 20 20 20 43 |.... C|
00000780: 4C 4F 53 45 57 49 4E 28 29 3B 0D 1C 20 20 20 20 |LOSEWIN();.. |
00000790: 20 20 20 20 20 DD 0D 1C 20 20 20 20 20 20 20 20 | ... |
000007A0: 49 4E 4B 45 59 28 D3 D4 C4 C9 CF 29 3B 0D 1C 0D |INKEY(.....);...|
000007B0: 1C 20 20 20 20 20 20 20 20 43 4C 4F 53 45 57 49 |. CLOSEWI|
000007C0: 4E 28 29 3B 0D 1C 20 20 20 20 20 20 DD 0D 1C 20 |N();.. ... |
000007D0: 20 20 20 20 45 58 49 54 28 29 3B 0D 1C 0D 1C DD | EXIT();.....|
000007E0: 0D 1C 0D 1C 0D 00 |...... |
.../* TEST PROGRAMM WITH THE SUPER C COM
PILER */....#INCLUDE "STDIO.H"..#INCLUDE
"ALLOCATION.C"..#INCLUDE "WINDOWS2.C"..
....STATIC BYTE PATTERN[41] = . 102,102,
102,102,102,102,102,102,..
102,102,102,102,102,102,10
2,102,.. 102,
102,102,102,102,102,102,102,..
102,102,102,102,102,10
2,102,102,..
102,102,102,102,102,102,102,102,0 .;....
STATIC BYTE BACKCOL[41] = . 6,6,6,6,6,6,
6,6,6,6,.. 6,
6,6,6,6,6,6,6,6,6,..
6,6,6,6,6,6,6,6,6,6,..
6,6,6,6,6,6,6,6,6,6,0
.;........MAIN().........INT LOOP;..CHA
R C;....CHAR *SCRADR = 0XE000;..CHAR *CO
LADR = 55296;..BYTE *BORDER = 53280;..BY
TE *SCREEN = 53281;..BYTE *COLOUR = 64
6;...... CLRSCR;.... *BORDER = 6
;.. *SCREEN = 3;.. *COLOUR = 6;.
... /* FILL BACKGROUND PATTERN */....
FOR (LOOP=0;LOOP<25;LOOP++,COLADR+=40
,SCRADR+=40).. ... MOVE(SC
RADR,40,&PATTERN[0],53);.. MOVE(
COLADR,40,&BACKCOL[0],53);.. .....
IF (OPENWIN(5,5,20,35)).. ...
CURSOR(7,7);.... PUTS("C64
WINDOWS BY P.HEDLIN",STDIO);....
IF (OPENWIN(19,0,21,15)).. ...
CURSOR(20,1);.... PU
TS("PRESS ANY KEY.",STDIO);....
INKEY(STDIO);.... CLOSEWIN()
;.. ... IF (OPENWIN(3,15,
15,37)).. ... FOR (LOO
P=0;LOOP<12;LOOP++).. ...
CURSOR(14,16);..
PUTS("WINDOW SCROLLING IN..",STDIO);.
. SCROLLWIN(UP);..
..... INKEY(STDIO);....
FOR (LOOP=0;LOOP<12;LOOP++)..
... CURSOR(4,16
);.. PUTS("BOTH DIRECTIONS
......",STDIO);.. SCROLLWI
N(DOWN);.. ... INK
EY(STDIO);.... CLEARWIN();....
INKEY(STDIO);.... C
LOSEWIN();.. ... INKEY(ST
DIO);.... CLOSEWIN();.. ...
EXIT();...........
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL