set_global_assignment -name VHDL_FILE apu/apu.vhd\r
\r
#ppu block...\r
-set_global_assignment -name VHDL_FILE ppu/ppu_registers.vhd\r
-set_global_assignment -name VHDL_FILE mem/chr_rom.vhd\r
-set_global_assignment -name VHDL_FILE ppu/ppu.vhd\r
-set_global_assignment -name VHDL_FILE ppu/vga_ppu.vhd\r
+#set_global_assignment -name VHDL_FILE ppu/ppu_registers.vhd\r
+#set_global_assignment -name VHDL_FILE mem/chr_rom.vhd\r
+#set_global_assignment -name VHDL_FILE ppu/ppu.vhd\r
+#set_global_assignment -name VHDL_FILE ppu/vga_ppu.vhd\r
\r
-#set_global_assignment -name VHDL_FILE "dummy-ppu.vhd"\r
+set_global_assignment -name VHDL_FILE "dummy-ppu.vhd"\r
\r
#cpu block...\r
-#set_global_assignment -name VHDL_FILE mem/prg_rom.vhd\r
-#set_global_assignment -name VHDL_FILE cpu/alu.vhd\r
-#set_global_assignment -name VHDL_FILE cpu/cpu_registers.vhd\r
-#set_global_assignment -name VHDL_FILE cpu/decoder.vhd\r
-#set_global_assignment -name VHDL_FILE cpu/mos6502.vhd\r
+set_global_assignment -name VHDL_FILE mem/prg_rom.vhd\r
+set_global_assignment -name VHDL_FILE cpu/alu.vhd\r
+set_global_assignment -name VHDL_FILE cpu/cpu_registers.vhd\r
+set_global_assignment -name VHDL_FILE cpu/decoder.vhd\r
+set_global_assignment -name VHDL_FILE cpu/mos6502.vhd\r
\r
-set_global_assignment -name VHDL_FILE "dummy-mos6502.vhd"\r
+#set_global_assignment -name VHDL_FILE "dummy-mos6502.vhd"\r
set_global_assignment -name VHDL_FILE de1_nes.vhd\r
\r
#need this config to program active serial mode...\r
signal dbg_disp_nt, dbg_disp_attr : out std_logic_vector (7 downto 0);
signal dbg_disp_ptn_h, dbg_disp_ptn_l : out std_logic_vector (15 downto 0);
signal dbg_nmi : out std_logic;
+ signal dummy_nmi : in std_logic;\r
--NES instance
base_clk : in std_logic;
\r
dbg_nmi <= nmi_n;\r
\r
--- nmi_n <= dummy_nmi;\r
+ nmi_n <= dummy_nmi;\r
-- dbg_ppu_ctrl <= dbg_pcl;\r
-- dbg_ppu_mask <= dbg_pch;\r
-- dbg_ppu_scrl_x(5) <= rom_ce_n;\r
\r
#wave zoom range 3339700 ps 5138320 ps\r
\r
-run 120 us\r
-run 200 us\r
-run 80 us\r
+run 100 us\r
\r
##wave addcursor 907923400 ps\r
\r
signal dbg_disp_nt, dbg_disp_attr : out std_logic_vector (7 downto 0);
signal dbg_disp_ptn_h, dbg_disp_ptn_l : out std_logic_vector (15 downto 0);
signal dbg_nmi : out std_logic;
+ signal dummy_nmi : in std_logic;
--NES instance
signal reset_input : std_logic;
signal nmi_input : std_logic;
signal dbg_nmi : std_logic;
+ signal dummy_nmi : std_logic;
signal h_sync_n : std_logic;
signal v_sync_n : std_logic;
--dbg_ppu_addr_we_n,
--dbg_ppu_clk_cnt ,
dbg_nmi,
+dummy_nmi,
base_clk, reset_input, joypad1, joypad2,
h_sync_n, v_sync_n, r, g, b, nt_v_mirror);
--- initiate nmi.
nmi_p: process
- constant nmi_wait : time := 100 us;
+ constant nmi_wait : time := 90040000 ps;
constant vblank_time : time := 60 us;
variable wait_cnt : integer := 0;
begin
wait for vblank_time / 4;
end if;
end process;
+ ---for test nmi...
+ dummy_nmi <= nmi_input;
+ --dummy_nmi <= 'Z';
--set chr rom mirror setting.
nt_v_mirror <= '1';
jsr init_global\r
jsr init_ppu\r
\r
- lda ad_start_msg\r
- sta $00\r
- lda ad_start_msg+1\r
- sta $01\r
- jsr print_ln\r
- jsr print_ln\r
- jsr print_ln\r
- jsr print_ln\r
- jsr print_ln\r
- jsr print_ln\r
-\r
- ;;test start...\r
- jsr addr_test\r
- jsr single_inst_test\r
- jsr a2_inst_test\r
- jsr a3_inst_test\r
- jsr a4_inst_test\r
- jsr a5_inst_test\r
- jsr status_test\r
- jsr ppu_test\r
-\r
- jsr pg_border_test\r
- jsr dma_test\r
+; lda ad_start_msg\r
+; sta $00\r
+; lda ad_start_msg+1\r
+; sta $01\r
+; jsr print_ln\r
+; jsr print_ln\r
+; jsr print_ln\r
+; jsr print_ln\r
+; jsr print_ln\r
+; jsr print_ln\r
+;\r
+; ;;test start...\r
+; jsr addr_test\r
+; jsr single_inst_test\r
+; jsr a2_inst_test\r
+; jsr a3_inst_test\r
+; jsr a4_inst_test\r
+; jsr a5_inst_test\r
+; jsr status_test\r
+; jsr ppu_test\r
+;\r
+; jsr pg_border_test\r
+; jsr dma_test\r
\r
; jsr simple_dma_test\r
\r
\r
;;dma start.\r
lda #$02\r
- sta $4014\r
+ ;sta $4014\r
+ sta $4013\r
\r
rts\r
.endproc\r
\r
;;ppu test flag.\r
use_ppu:\r
- .byte $01\r
+ .byte $00\r
\r
full_dma_test:\r
.byte $01\r