all repos — xyw @ 481fe7eafa064f39b9ea831d00de282712f3ef06

A minimal virtual machine and assembler for terminals.

devices/display.c

 1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
#include <stdio.h>
#include "../xyw.h"

#define COLOR 0xFFFFFF

/* display device */
#define DISPLAY_FILL 0x40
#define DISPLAY_X 0x41
#define DISPLAY_Y 0x42
#define DISPLAY_ON_RENDER 0x43

void display_output(xyw_byte *data, xyw_byte addr, xyw_byte *error)
{
    (void)error;
    (void)data;
    (void)addr;
    printf("Display output called: addr=%02X\n", addr);
    switch (addr)
    {
    case DISPLAY_FILL:
        fenster_pixel(&xyw_fenster, data[DISPLAY_X], data[DISPLAY_Y]) = data[DISPLAY_FILL];
        break;
    }
}

xyw_byte display_input(xyw_byte *data, xyw_byte addr, xyw_byte *error)
{
    (void)error;
    (void)data;
    (void)addr;
    return 0;
}