Add irq autocrawler sample
This commit is contained in:
parent
dfe3d71f85
commit
aee284c1d6
|
@ -60,10 +60,13 @@ w1:
|
||||||
jmp ex
|
jmp ex
|
||||||
|
|
||||||
e2:
|
e2:
|
||||||
sta $d012
|
ldx npos
|
||||||
|
stx tpos
|
||||||
|
|
||||||
lda npos
|
bit $d011
|
||||||
sta tpos
|
bmi e1
|
||||||
|
|
||||||
|
sta $d012
|
||||||
|
|
||||||
asl $d019
|
asl $d019
|
||||||
jmp ex
|
jmp ex
|
||||||
|
@ -130,10 +133,13 @@ w1:
|
||||||
jmp ex
|
jmp ex
|
||||||
|
|
||||||
e2:
|
e2:
|
||||||
sta $d012
|
ldx npos
|
||||||
|
stx tpos
|
||||||
|
|
||||||
lda npos
|
bit $d011
|
||||||
sta tpos
|
bmi e1
|
||||||
|
|
||||||
|
sta $d012
|
||||||
|
|
||||||
jmp ex
|
jmp ex
|
||||||
|
|
||||||
|
|
|
@ -9117,7 +9117,7 @@ void InterCodeProcedure::Disassemble(FILE* file)
|
||||||
|
|
||||||
void InterCodeProcedure::Disassemble(const char* name, bool dumpSets)
|
void InterCodeProcedure::Disassemble(const char* name, bool dumpSets)
|
||||||
{
|
{
|
||||||
#if 1
|
#if 0
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
FILE* file;
|
FILE* file;
|
||||||
static bool initial = true;
|
static bool initial = true;
|
||||||
|
|
Binary file not shown.
|
@ -14,17 +14,21 @@ const char Text[] =
|
||||||
|
|
||||||
RIRQCode scroll, restore;
|
RIRQCode scroll, restore;
|
||||||
|
|
||||||
static int x;
|
int x;
|
||||||
|
|
||||||
// Loop through text
|
// Loop through text
|
||||||
__interrupt void doscroll(void)
|
__interrupt void doscroll(void)
|
||||||
{
|
{
|
||||||
|
vic.color_border++;
|
||||||
|
|
||||||
// Update raster IRQ for scroll line with new horizontal scroll offset
|
// Update raster IRQ for scroll line with new horizontal scroll offset
|
||||||
rirq_data(&scroll, 0, 7 - (x & 7));
|
rirq_data(&scroll, 0, 7 - (x & 7));
|
||||||
// Copy scrolled version of text when switching over char border
|
// Copy scrolled version of text when switching over char border
|
||||||
if ((x & 7) == 0)
|
if ((x & 7) == 0)
|
||||||
memcpy((char *)0x0400 + 40 * 24, Text + ((x >> 3) & 255), 40);
|
memcpy((char *)0x0400 + 40 * 24, Text + ((x >> 3) & 255), 40);
|
||||||
x++;
|
x++;
|
||||||
|
|
||||||
|
vic.color_border--;
|
||||||
}
|
}
|
||||||
|
|
||||||
int main(void)
|
int main(void)
|
||||||
|
@ -46,7 +50,7 @@ int main(void)
|
||||||
// call scroll copy code
|
// call scroll copy code
|
||||||
rirq_call(&restore, 1, doscroll);
|
rirq_call(&restore, 1, doscroll);
|
||||||
// place this at the top of the screen before the display starts
|
// place this at the top of the screen before the display starts
|
||||||
rirq_set(1, 4, &restore);
|
rirq_set(1, 250, &restore);
|
||||||
|
|
||||||
// sort the raster IRQs
|
// sort the raster IRQs
|
||||||
rirq_sort();
|
rirq_sort();
|
||||||
|
|
Loading…
Reference in New Issue