Today I made a little progress and was able to get ISim to run a simulation. Instead of writing a testbench in a HDL, I was able to force NMI inactive, active reset for a initial time of 5000ps, and force a 20.58ns clock for O2. Below is a pic from ISim with system successfully running @24MHz. One thing I don't understand is the display (chip select) signal goes low 3 times and that's it? I ran the sim for a full 8sec and it never again goes low, even though the display in real life is constantly clearing the display with incrementally changing colors.

Code: Select all
LDA #$01 ;software reset
STA dcom
STA dcom
STA dcom
LDX #$ff ;delay
a DEX
BNE a
LDA #$e0 ;start PLL
STA dcom
LDA #$01
STA ddat
LDX #$ff ;delay
b DEX
BNE b
LDA #$e0 ;lock PLL
STA dcom
LDA #$03
STA ddat
LDA #$b0 ;set LCD mode, 640x480
STA dcom
LDA #$0c
STA ddat
LDA #$80
STA ddat
LDA #$02
STA ddat
LDA #$7f
STA ddat
LDA #$01
STA ddat
LDA #$df
STA ddat
STZ ddat
LDA #$f0 ;set interface format:8-bit
STA dcom
LDA #$00
STA ddat
LDA #$3a ;set RGB format, 18 bits per pixel
STA dcom
LDA #$60
STA ddat
LDA #$e6 ;set pixel clock
STA dcom
LDA #$04
STA ddat
LDA #$ff
STA ddat
LDA #$ff
STA ddat
LDA #$b4 ;set Horizontal Period
STA dcom
LDA #$02
STA ddat
LDA #$f8
STA ddat
STZ ddat
LDA #$44
STA ddat
LDA #$0f
STA ddat
STZ ddat
STZ ddat
STZ ddat
LDA #$b6 ;set Vertical Period
STA dcom
LDA #$01
STA ddat
LDA #$f8
STA ddat
STZ ddat
LDA #$13
STA ddat
LDA #$07
STA ddat
STZ ddat
STZ ddat
