| plan 9 kernel history: overview | file list | diff list |
1991/0928/pc/vga.c (diff list | history)
| 1991/0927/sys/src/9/pc/vga.c:52,57 – 1991/0928/sys/src/9/pc/vga.c:52,58 (short | long | prev | next) | ||
| 1991/0727 | Smmask= 0x02, /* map mask */ CRX= 0x3D4, /* index to crt registers */ CR= 0x3D5, /* crt registers */ | |
| 1991/0928 | Cvertend= 0x12, /* vertical display end */ | |
| 1991/0727 | Cmode= 0x17, /* mode register */ Cmsl= 0x09, /* max scan line */ ARX= 0x3C0, /* index to attribute registers */ | |
| 1991/0927/sys/src/9/pc/vga.c:106,111 – 1991/0928/sys/src/9/pc/vga.c:107,174 | ||
| 1991/0727 | } /* | |
| 1991/0928 | * 2 bit deep display. the bits are adjacent. maybe this * will work * 4 color * 640x480 */ vga2(void) { int i; arout(Acpe, 0x00); /* disable planes for output */ gscreen.ldepth = 1; arout(Amode, 0x01); /* color graphics mode */ grout(Gmisc, 0x01); /* graphics mode */ grout(Gmode, 0x30); /* 2 bits deep, even bytes are * planes 0 and 2, odd are planes * 1 and 3 */ grout(Grot, 0x00); /* CPU writes bytes to video * mem without modifications */ crout(Cmode, 0xe3); /* turn off address wrap & * word mode */ crout(Cmsl, 0x40); /* 1 pixel per scan line */ crout(Cvertend, MAXY); /* 480 lne display */ srout(Smode, 0x06); /* extended memory, odd/even */ srout(Sclock, 0x01); /* 8 bits/char */ srout(Smmask, 0x0f); /* enable 2 planes for writing */ arout(Acpe, 0x0f); /* enable 2 planes for output */ for(i = 0; i < 128*1024;){ ((uchar*)SCREENMEM)[i++] = 0x1b; ((uchar*)SCREENMEM)[i++] = 0xe4; } for(;;); } /* * set up like vga mode 0x11 * 2 color * 640x480 */ vga1(void) { arout(Acpe, 0x00); /* disable planes for output */ gscreen.ldepth = 0; arout(Amode, 0x01); /* color graphics mode */ grout(Gmisc, 0x01); /* graphics mode */ grout(Gmode, 0x00); /* 1 bit deep */ grout(Grot, 0x00); /* CPU writes bytes to video * mem without modifications */ crout(Cmode, 0xe3); /* turn off address wrap & * word mode */ crout(Cmsl, 0x40); /* 1 pixel per scan line */ crout(Cvertend, MAXY); /* 480 lne display */ srout(Smode, 0x06); /* extended memory, * odd/even off */ srout(Sclock, 0x01); /* 8 bits/char */ srout(Smmask, 0x0f); /* enable 4 planes for writing */ arout(Acpe, 0x0f); /* enable 4 planes for output */ } /* | |
| 1991/0727 | * Set up for 4 separately addressed bit planes. Each plane is */ void | |
| 1991/0927/sys/src/9/pc/vga.c:115,131 – 1991/0928/sys/src/9/pc/vga.c:178,184 | ||
| 1991/0727 | int c; | |
| 1991/0730 | ulong *l; | |
| 1991/0723 | ||
| 1991/0727 |
| |
| 1991/0730 |
| |
| 1991/0724 | ||
| 1991/0928 | vga1(); | |
| 1991/0727 | /* | |
| 1991/0801 | * swizzle the font longs. | |
| 1991/0921 | * we do it here since the font is initialized with big | |