ceda2vga/src/vga.pio

61 lines
711 B
Plaintext
Raw Normal View History

2022-10-10 17:10:52 +00:00
.program vga_free_run
2022-10-10 19:48:16 +00:00
entrypoint_vga_free_run:
2022-10-15 13:08:22 +00:00
pull
mov y, osr
loope:
mov x, y
2022-10-17 14:52:15 +00:00
wait irq 7
2022-10-10 17:10:52 +00:00
loop:
2022-10-17 14:52:15 +00:00
out pins, 1 [3]
2022-10-15 13:08:22 +00:00
jmp x-- loop
jmp loope
2022-10-10 17:10:52 +00:00
.program vga_hsync
2022-10-10 19:48:16 +00:00
entrypoint_vga_hsync:
2022-10-11 18:39:22 +00:00
pull
2022-10-12 18:29:11 +00:00
mov isr, osr
pull
loop:
irq set 0 [1]
2022-10-12 20:09:16 +00:00
2022-10-12 18:29:11 +00:00
mov x, isr
2022-10-11 18:39:22 +00:00
set pins, 0
hsync_pulse:
jmp x-- hsync_pulse
2022-10-17 14:52:15 +00:00
irq set 7
2022-10-11 18:39:22 +00:00
mov x, osr
set pins, 1
hsync_idle:
jmp x-- hsync_idle
2022-10-17 14:52:15 +00:00
jmp loop
2022-10-12 18:54:29 +00:00
.program vga_vsync
entrypoint_vga_vsync:
pull
mov isr, osr
pull
loop:
2022-10-12 20:09:16 +00:00
mov x, isr
vsync_pulse:
2022-10-12 20:09:16 +00:00
wait irq 0
set pins, 0
jmp x-- vsync_pulse
2022-10-12 20:09:16 +00:00
mov x, osr
vsync_idle:
wait irq 0
set pins, 1
2022-10-12 20:09:16 +00:00
jmp x-- vsync_idle
irq set 1
jmp loop