So I'm playing arround wiht the VDC and I've found a way to hard crash VICE, crashes on 3.2 WINVICE and latestish GTK3 VICE so not a new bug ;) I've attached a PRG, run it and look for the dialog box.
0x00007ffff1196d7d in __memset_avx2_erms () from /lib64/libc.so.6
(gdb) bt #0 0x00007ffff1196d7d in __memset_avx2_erms () from /lib64/libc.so.6 #1 0x0000555555753068 in handle_visible_line_with_cache (raster=0x5555574a8458 <vdc+216>) at raster-line.c:377 #2 0x0000555555753a64 in handle_visible_line (raster=0x5555574a8458 <vdc+216>) at raster-line.c:640 #3 raster_line_emulate (raster=raster@entry=0x5555574a8458 <vdc+216>) at raster-line.c:678 #4 0x000055555574ebed in vdc_raster_draw_alarm_handler (offset=2, data=<optimized out>) at vdc.c:609 #5 0x00005555555d86fc in alarm_context_dispatch (cpu_clk=<optimized out>, context=<optimized out>) at ../alarm.h:145 #6 maincpu_mainloop () at ../6510core.c:1982 #7 0x00005555555c0c59 in main_program (argc=<optimized out>, argv=<optimized out>) at main.c:265 #8 0x00007ffff104eae7 in __libc_start_main () from /lib64/libc.so.6 #9 0x00005555555ae01a in _start ()
source for this program would make it a bit less annoying to track down and possibly fix :)
(edit compyx: font was a bit large)
This should be the magic sauce
ldx #0 lda #63 jsr writeVDCReg ldx #1 lda #80; 40 set this back to 40 and it won't crash anymore jsr writeVDCReg ldx #2 lda #55 jsr writeVDCReg ldx #3 lda #69 jsr writeVDCReg ldx #22 lda #$89 jsr writeVDCReg ldx #25 lda #215 ; enable bitmap jsr writeVDCReg ldx #27 lda #80-8 ;40 jsr writeVDCReg ldx #34 lda #63 jsr writeVDCReg ldx #35 lda #52 jsr writeVDCReg ldx #20 lda #>40 ; $2000 jsr writeVDCReg ldx #21 lda #<40 ;$2000 jsr writeVDCReg ; set the attribute memory to $2000 ldx #12 lda #00 jsr writeVDCReg ldx #13 lda #00 jsr writeVDCReg ; set bitmap to 0 .... writeVDCReg stx $d600 - ldx $d600 bpl - sta $d601 rts
However I've attached the list as well.
added to testprog repo, thanks for the testcase!
fixed in r39298, please retest.
confirmed fixed
Nice one, closing.
Log in to post a comment.
0x00007ffff1196d7d in __memset_avx2_erms () from /lib64/libc.so.6
source for this program would make it a bit less annoying to track down and possibly fix :)
(edit compyx: font was a bit large)
Last edit: compyx 2019-11-12
This should be the magic sauce
However I've attached the list as well.
added to testprog repo, thanks for the testcase!
fixed in r39298, please retest.
confirmed fixed
Nice one, closing.