mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-08-07 16:25:16 +00:00
tfv: add screen clearing routines
This commit is contained in:
@@ -1309,3 +1309,22 @@ int collision(int xx, int yy, int ground_color) {
|
|||||||
|
|
||||||
return collide;
|
return collide;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void clear_top(int page) {
|
||||||
|
int i;
|
||||||
|
|
||||||
|
ram[COLOR]=0x0;
|
||||||
|
for(i=0;i<40;i+=2) {
|
||||||
|
hlin_double(page,0,40,i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void clear_bottom(int page) {
|
||||||
|
int i;
|
||||||
|
|
||||||
|
/* NORMAL space */
|
||||||
|
ram[COLOR]=0xa0;
|
||||||
|
for(i=40;i<48;i+=2) {
|
||||||
|
hlin_double(page,0,40,i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@@ -29,6 +29,9 @@ void soft_switch(unsigned short address);
|
|||||||
int soft_switch_read(unsigned short address);
|
int soft_switch_read(unsigned short address);
|
||||||
int vlin(int page, int y1, int y2, int at);
|
int vlin(int page, int y1, int y2, int at);
|
||||||
int collision(int xx, int yy, int ground_color);
|
int collision(int xx, int yy, int ground_color);
|
||||||
|
void clear_top(int page);
|
||||||
|
void clear_bottom(int page);
|
||||||
|
|
||||||
|
|
||||||
#define APPLE_UP 11
|
#define APPLE_UP 11
|
||||||
#define APPLE_DOWN 10
|
#define APPLE_DOWN 10
|
||||||
|
16
gr-sim/tfv.c
16
gr-sim/tfv.c
@@ -955,12 +955,22 @@ int main(int argc, char **argv) {
|
|||||||
|
|
||||||
grsim_init();
|
grsim_init();
|
||||||
|
|
||||||
ram[DISP_PAGE]=0;
|
|
||||||
ram[DRAW_PAGE]=0;
|
|
||||||
|
|
||||||
home();
|
home();
|
||||||
gr();
|
gr();
|
||||||
|
|
||||||
|
/* Clear bottom of zero page */
|
||||||
|
apple_memset(&ram[0],0,16);
|
||||||
|
|
||||||
|
/* clear top page0 */
|
||||||
|
/* clear top page1 */
|
||||||
|
clear_top(0);
|
||||||
|
clear_top(1);
|
||||||
|
|
||||||
|
/* clear bottom page0 */
|
||||||
|
/* clear bottom page1 */
|
||||||
|
clear_bottom(0);
|
||||||
|
clear_bottom(1);
|
||||||
|
|
||||||
/* Do Opening */
|
/* Do Opening */
|
||||||
opening();
|
opening();
|
||||||
|
|
||||||
|
@@ -58,7 +58,7 @@ int select_menu(int x, int y, int num, char **items) {
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
void apple_memset(char *ptr, int value, int length) {
|
void apple_memset(unsigned char *ptr, int value, int length) {
|
||||||
|
|
||||||
a=value;
|
a=value;
|
||||||
x=length;
|
x=length;
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
int repeat_until_keypressed(void);
|
int repeat_until_keypressed(void);
|
||||||
int select_menu(int x, int y, int num, char **items);
|
int select_menu(int x, int y, int num, char **items);
|
||||||
void apple_memset(char *ptr, int value, int length);
|
void apple_memset(unsigned char *ptr, int value, int length);
|
||||||
void print_u8(unsigned char value);
|
void print_u8(unsigned char value);
|
||||||
void print_byte(unsigned char value);
|
void print_byte(unsigned char value);
|
||||||
void page_flip(void);
|
void page_flip(void);
|
||||||
|
Reference in New Issue
Block a user