This commit is contained in:
aramya 2021-10-11 10:36:11 +01:00
parent afaf4bb7f4
commit 9e37e797f6
2 changed files with 29 additions and 18 deletions

View File

@ -1,18 +1,4 @@
#define beige 0xBE
#define mac99 0x5A
#define __VRAM__BEIGE 0x80000000
#define __BIOS__BEIGE 0xFFC00000
#define __VRAM__MAC99 0x81000000
#define __BIOS__MAC99 0XFFF00000
#define __MOUSE__MAC99 0x8008003C
#define __KEYBOARD__MAC99 0x80080038
unsigned char IO_TYPE;
unsigned char* p_vram;
unsigned char* p_bios;
unsigned char* p_keyboard;
unsigned char* p_mouse;
#include "boot.h"
void get_io_type(void)
{
if (*(unsigned char*)__VRAM__BEIGE == beige) IO_TYPE = beige;
@ -38,7 +24,10 @@ void main(void)
{
get_io_type();
init();
for(;;) memcpy_24bit(0x81000000, p_mouse, 1, 0x100000);
for(;;)
{
memcpy_24bit(0x81000000, p_mouse, 1, 0x100000);
}
}
@ -58,7 +47,6 @@ void fillscreen(unsigned char a, unsigned char b, unsigned char c, int n)
p_vram++;
}
}
void memcpy(unsigned char* dest, unsigned char* src, int n)
{
unsigned char* destination = dest;
@ -69,7 +57,6 @@ void memcpy(unsigned char* dest, unsigned char* src, int n)
destination++; source++;
}
}
void memcpy_24bit(unsigned char* dest, unsigned char* src, int n, int size)
{
unsigned char* destination = dest;

24
entry/boot.h Normal file
View File

@ -0,0 +1,24 @@
#define beige 0xBE
#define mac99 0x5A
#define __VRAM__BEIGE 0x80000000
#define __BIOS__BEIGE 0xFFC00000
#define __VRAM__MAC99 0x81000000
#define __BIOS__MAC99 0XFFF00000
#define __MOUSE__MAC99 0x8008003C
#define __KEYBOARD__MAC99 0x80080038
unsigned char IO_TYPE;
unsigned char* p_vram;
unsigned char* p_bios;
unsigned char* p_keyboard;
unsigned char* p_mouse;
unsigned char u8_extract_bit(unsigned char n, unsigned char bit);
void get_io_type(void);
void init(void);
void fillscreen(unsigned char a, unsigned char b, unsigned char c, int n);
//void memcpy(unsigned char* dest, unsigned char* src, int n);
//void memcpy_24bit(unsigned char* dest, unsigned char* src, int n, int size);
unsigned char u8_extract_bit(unsigned char n, unsigned char bit);
unsigned char u32_extract_bit(unsigned int n, unsigned char bit);