-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Make some drawing functions for drawing lines, and intelligently merge the lines using line merge characters, instead of adding each character manually.
Rework this:
void frame_draw() {
textcolor(WHITE);
bgcolor(BLUE);
clrscr();
unsigned char y = 0;
for (unsigned char x = 0; x < 79; x++) {
cputcxy(x, y, 0x40);
}
cputcxy(0, y, 0x70);
cputcxy(79, y, 0x6E);
y++;
cputcxy(0, y, 0x5d);
cputcxy(79, y, 0x5d);
y++;
for (unsigned char x = 0; x < 79; x++) {
cputcxy(x, y, 0x40);
}
cputcxy(0, y, 0x6B);
cputcxy(79, y, 0x73);
cputcxy(12, y, 0x72);
y++;
for (; y < 37; y++) {
cputcxy(0, y, 0x5D);
cputcxy(12, y, 0x5D);
cputcxy(79, y, 0x5D);
}
for (unsigned char x = 0; x < 79; x++) {
cputcxy(x, y, 0x40);
}
cputcxy(0, y, 0x6B);
cputcxy(79, y, 0x73);
cputcxy(12, y, 0x71);
y++;
for (; y < 41; y++) {
cputcxy(0, y, 0x5D);
cputcxy(79, y, 0x5D);
}
for (unsigned char x = 0; x < 79; x++) {
cputcxy(x, y, 0x40);
}
cputcxy(0, y, 0x6B);
cputcxy(79, y, 0x73);
cputcxy(10, y, 0x72);
cputcxy(20, y, 0x72);
cputcxy(30, y, 0x72);
cputcxy(40, y, 0x72);
cputcxy(50, y, 0x72);
cputcxy(60, y, 0x72);
cputcxy(70, y, 0x72);
cputcxy(79, y, 0x73);
y++;
for (; y < 55; y++) {
cputcxy(0, y, 0x5D);
cputcxy(79, y, 0x5D);
cputcxy(10, y, 0x5D);
cputcxy(20, y, 0x5D);
cputcxy(30, y, 0x5D);
cputcxy(40, y, 0x5D);
cputcxy(50, y, 0x5D);
cputcxy(60, y, 0x5D);
cputcxy(70, y, 0x5D);
}
for (unsigned char x = 0; x < 79; x++) {
cputcxy(x, y, 0x40);
}
cputcxy(0, y, 0x6B);
cputcxy(79, y, 0x73);
cputcxy(10, y, 0x5B);
cputcxy(20, y, 0x5B);
cputcxy(30, y, 0x5B);
cputcxy(40, y, 0x5B);
cputcxy(50, y, 0x5B);
cputcxy(60, y, 0x5B);
cputcxy(70, y, 0x5B);
y++;
for (; y < 59; y++) {
cputcxy(0, y, 0x5D);
cputcxy(79, y, 0x5D);
cputcxy(10, y, 0x5D);
cputcxy(20, y, 0x5D);
cputcxy(30, y, 0x5D);
cputcxy(40, y, 0x5D);
cputcxy(50, y, 0x5D);
cputcxy(60, y, 0x5D);
cputcxy(70, y, 0x5D);
}
for (unsigned char x = 0; x < 79; x++) {
cputcxy(x, y, 0x40);
}
cputcxy(0, y, 0x6D);
cputcxy(79, y, 0x7D);
cputcxy(10, y, 0x71);
cputcxy(20, y, 0x71);
cputcxy(30, y, 0x71);
cputcxy(40, y, 0x71);
cputcxy(50, y, 0x71);
cputcxy(60, y, 0x71);
cputcxy(70, y, 0x71);
cputcxy(79, y, 0x7D);
}Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request