annotate main.c @ 0:cbded07e50d8 default tip

*: initial commit here's a simple VBE thing. It's intended to be able to work pretty much anywhere, but I don't really have anything to test VBE 1.0 with (and i'm not entirely sure if this code works in the first place) it's balls simple, no BS, and ONLY works with DJGPP.
author Paper <paper@tflc.us>
date Sat, 02 Aug 2025 12:55:21 -0400
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
1 #include <stdio.h>
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
2 #include <stdint.h>
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
3 #include <dpmi.h>
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
4 #include <go32.h>
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
5 #include <sys/farptr.h>
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
6 #include <stdlib.h>
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
7 #include <string.h>
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
8 #include <inttypes.h>
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
9 #include <dos.h>
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
10
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
11 #include "vbe.h"
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
12
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
13 int main(void)
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
14 {
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
15 uint8_t *framebuffer;
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
16 struct vbe vbe;
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
17 int x, y;
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
18
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
19 framebuffer = malloc(640 * 400);
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
20
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
21 vbe_init(&vbe, 640, 400);
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
22
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
23 {
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
24 for (x = 0; x < 640; x++)
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
25 for (y = 0; y < 400; y++)
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
26 framebuffer[(y * 640) + x] = vbe_rgb(&vbe, (x + 10), (y + 10), 0xFF);
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
27
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
28 vbe_blit(&vbe, framebuffer);
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
29 }
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
30
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
31 delay(5000);
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
32
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
33 free(framebuffer);
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
34
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
35 vbe_quit(&vbe);
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
36
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
37 printf("vbe.bpp: %d", vbe.bpp);
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
38
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
39 return 0;
cbded07e50d8 *: initial commit
Paper <paper@tflc.us>
parents:
diff changeset
40 }