Posted Sat Jan 21, 2012 10:19 AM
Posted Sat Jan 21, 2012 5:34 PM
Posted Sun Jan 22, 2012 12:32 AM
Posted Tue Jan 24, 2012 9:35 AM
Posted Wed Jan 25, 2012 6:35 PM
Posted Wed Jan 25, 2012 11:12 PM
CyranoJ, on Wed Jan 25, 2012 7:28 PM, said:
Posted Wed Jan 25, 2012 11:25 PM
Posted Thu Jan 26, 2012 3:17 PM
Posted Thu Jan 26, 2012 4:56 PM
Posted Fri Jan 27, 2012 1:25 AM
Edited by SebRmv, Fri Jan 27, 2012 1:28 AM.
Posted Fri Jan 27, 2012 3:48 PM
Posted Sat Jan 28, 2012 3:17 AM
Edited by SebRmv, Sat Jan 28, 2012 3:40 AM.
Posted Sat Jan 28, 2012 3:47 AM
Posted Sun Jan 29, 2012 7:48 PM
SebRmv, on Sat Jan 28, 2012 3:17 AM, said:
Edited by Hyper_Eye, Sun Jan 29, 2012 7:49 PM.
Posted Mon Jan 30, 2012 1:48 AM
Posted Mon Jan 30, 2012 2:58 AM
Edited by SebRmv, Mon Jan 30, 2012 2:59 AM.
Posted Mon Jan 30, 2012 2:51 PM
Posted Tue Jan 31, 2012 1:08 AM
#include <interrupt.h>
#include <display.h>
#include <sprite.h>
#include <screen.h>
#define RED 0xf800
#define BLUE 0x07c0
#define GREEN 0x003f
#define SCREEN_WIDTH 320
#define SCREEN_HEIGHT 240
#define LINE_WIDTH 8
#define LINE_LENGTH 200
#define LINE_PIXELS (LINE_WIDTH * LINE_LENGTH)
int main(int argc, char* argv[])
{
int i, j;
// Initialize
TOMREGS->vmode = RGB16|CSYNC|BGEN|PWIDTH4|VIDEN;
init_interrupts();
init_display_driver();
// Setup a display
display* d = new_display(0);
d->x = 16;
d->y = 8;
// A screen to play with
screen* scr = new_screen();
alloc_simple_screen(DEPTH16, SCREEN_WIDTH, SCREEN_HEIGHT, scr);
clear_screen(scr);
// Attach the screen to the display as a sprite
sprite* scr_sprite = sprite_of_screen(0, 0, scr);
attach_sprite_to_display_at_layer(scr_sprite, d, 0);
// Draw the red vertical lines one pixel at a time
for(i = 0; i < LINE_WIDTH; i++)
{
for(j = 0; j < LINE_LENGTH; j++)
{
put_pixel(scr, SCREEN_WIDTH * 0.25 + i, j, RED);
}
}
// Draw the green vertical lines at once with a pixel array
pixel pl[LINE_PIXELS];
for(i = 0; i < LINE_WIDTH; i++)
{
for(j = 0; j < LINE_LENGTH; j++)
{
int ndx = (i * LINE_LENGTH) + j;
pl[ndx].x = SCREEN_WIDTH * 0.5 + i;
pl[ndx].y = j;
}
}
put_pixels(scr, GREEN, LINE_PIXELS, pl);
// Draw the blue vertical lines one line at a time with the builtin
// vline() method.
for(i = 0; i < LINE_WIDTH; i++)
{
vline(scr, SCREEN_WIDTH * 0.75 + i, 0, LINE_LENGTH, BLUE);
}
// Show the display
show_display(d);
for(;;)
{
vsync();
}
return 0;
}


Posted Tue Jan 31, 2012 2:49 AM
Hyper_Eye, on Tue Jan 31, 2012 1:08 AM, said:
Posted Tue Jan 31, 2012 2:55 AM
put_pixel(scr, SCREEN_WIDTH * 0.25 + i, j, RED<<16 | RED);
vline(scr, SCREEN_WIDTH * 0.75 + i, 0, LINE_LENGTH, BLUE<<16 | BLUE);
put_pixels(scr, GREEN<<16 | GREEN, LINE_PIXELS, pl);
Edited by SebRmv, Tue Jan 31, 2012 2:58 AM.
Posted Tue Jan 31, 2012 3:07 AM
Posted Tue Jan 31, 2012 3:22 AM
SebRmv, on Tue Jan 31, 2012 2:49 AM, said:
SebRmv, on Tue Jan 31, 2012 2:55 AM, said:
put_pixel(scr, SCREEN_WIDTH * 0.25 + i, j, RED<<16 | RED);
vline(scr, SCREEN_WIDTH * 0.75 + i, 0, LINE_LENGTH, BLUE<<16 | BLUE);
put_pixels(scr, GREEN<<16 | GREEN, LINE_PIXELS, pl);
SebRmv, on Tue Jan 31, 2012 3:07 AM, said:
Posted Tue Jan 31, 2012 3:03 PM
vline(scr, SCREEN_WIDTH * 0.75 + i, 0, LINE_LENGTH-1, BLUE<<16 | BLUE);
Posted Wed Feb 1, 2012 1:45 AM
Hyper_Eye, on Tue Jan 31, 2012 3:03 PM, said:
vline(scr, SCREEN_WIDTH * 0.75 + i, 0, LINE_LENGTH-1, BLUE<<16 | BLUE);
0 members, 0 guests, 0 anonymous users