Zihao Yu
ac0249005a
apps,litenes,ppu: do not examine every sprite
...
* also put the checking of sprite0 hit out of the inner loop
2019-04-29 16:08:42 +08:00
Zihao Yu
83f10b8cc6
apps,litenes,fce: fix frame_cnt
2019-04-29 14:22:01 +08:00
Zihao Yu
e6c8d1952f
apps,litenes,ppu: use memcpy() for DMA
2019-04-29 13:39:00 +08:00
Zihao Yu
93b25bf7f2
apps,litenes,memory: inline mmc and psg accessing
2019-04-29 13:24:13 +08:00
Zihao Yu
1a98d2009d
apps,litenes,cpu: optimize lazy flag for zf
2019-04-29 12:48:49 +08:00
Zihao Yu
e98b03d54d
apps,litenes,cpu: remove extra cycle statistic during addressing
...
* it seems still work
2019-04-29 12:41:02 +08:00
Zihao Yu
aebf0f2211
apps,litenes,cpu: let flag be an integer instead of a bit
...
* this can simplify some flag computation
* to use the flag as a bit, use cpu_flag_setbit(flag)
2019-04-29 11:45:59 +08:00
Zihao Yu
e8dfb2fecc
apps,litenes,cpu: do not compute target if the branch is not taken
2019-04-29 11:43:58 +08:00
Zihao Yu
d506f5e8fe
apps,litenes,ppu: change palette cache to color cache
2019-04-29 10:08:45 +08:00
Zihao Yu
a3a875bb7a
apps,litenes: clean up
2019-04-29 02:10:41 +08:00
Zihao Yu
b6ccd9e998
apps,litenes,ppu: optimize sprite drawing
2019-04-29 02:08:22 +08:00
Zihao Yu
ad21d7b8e8
apps,litenes,ppu: misc optimization
2019-04-29 00:15:41 +08:00
Zihao Yu
1255a78591
apps,litenes,ppu: skip transparent tiles
2019-04-28 22:13:43 +08:00
Zihao Yu
3d67310923
apps,litenes,ppu: use one dimension array for XHL tables
...
* this can reduce the address calculation
2019-04-28 21:57:32 +08:00
Zihao Yu
797d39291f
apps,litenes,fce: read key during the processing of scanlines
...
* this will reduce the latency of key respones when the host is very
slow
2019-04-28 21:54:46 +08:00
Zihao Yu
0218408031
apps,litenes,ppu: use struct for sprite
2019-04-28 11:34:08 +08:00
Zihao Yu
8b496feda8
apps,litenes,ppu: optimize loop
2019-04-27 21:54:57 +08:00
Zihao Yu
236abcd412
apps,litenes,ppu,draw: remove boundary check
2019-04-27 21:16:33 +08:00
Zihao Yu
6aa80a43c6
apps,litenes,ppu: optimize loop boundary
2019-04-27 20:05:44 +08:00
Zihao Yu
7e645c1382
apps,litenes,ppu: use uint16_t for XHL table, instead of uint64_t
2019-04-27 20:04:38 +08:00
Zihao Yu
107eaf04b1
apps,litenes,ppu: fix scanline bug
2019-04-27 16:08:24 +08:00
Zihao Yu
4f623fc794
apps,litenes,ppu: use preprocess table to obtain attribute
2019-04-25 23:11:28 +08:00
Yanyan Jiang
ce2176a678
Merge pull request #40 from jiangyy/litenes-opt
...
Litenes opt
2019-04-25 00:47:47 +00:00
Zihao Yu
331d001b84
apps,litenes,fce: add PROFILE macro
2019-04-24 22:25:55 +08:00
Zihao Yu
4f3092cb8a
apps,litenes: add non-stretch display mode
2019-04-24 22:18:47 +08:00
Zihao Yu
b38213b4cd
apps,litenes,ppu: only guard ppu.PPUADDR when it is updated
2019-04-24 22:17:35 +08:00
Zihao Yu
b6556c8cd6
apps,litenes,ppu: optimize ppu_draw_sprite_scanline()
2019-04-24 22:15:25 +08:00
Zihao Yu
b4e5514aee
apps,litenes,cpu: put the up-to-date bit of ZF at position 31
...
* this may help to use "branch negative" instructions to check it
2019-04-24 22:12:32 +08:00
Zihao Yu
7d29290c90
apps,litenes,memory: reorder the priorty of MMIO
2019-04-24 22:10:37 +08:00
Zihao Yu
a735ebed8e
apps,litenes,cpu: use local variable in cpu_run()
2019-04-24 17:53:03 +08:00
Zihao Yu
933a7e68b4
apps,litenes,cpu: write to CPU RAM directly if the address is within the zero page
2019-04-24 16:35:54 +08:00
Zihao Yu
9f5db2b0fc
apps,litenes,cpu: refactor cycle calculation
2019-04-24 15:46:56 +08:00
Zihao Yu
b68d0b63e9
apps,litenes,cpu: refactor statistic
2019-04-24 15:19:52 +08:00
Zihao Yu
056018ec1f
apps,litenes,cpu: lazy flag computation for ZF and NF
2019-04-24 14:00:25 +08:00
Zihao Yu
91cf3d2db9
apps,litenes,cpu: use macro to define decode and execute functions
...
* This can let `op_address` and `op_value` become local, which provides
more change for optimization.
* Some instructions do not need to load memory in decode stage, therefore
we provide the `notload` version of decode functions for them.
2019-04-24 11:41:33 +08:00
Zihao Yu
6270a141ee
apps,litenes,cpu: optimize memory accessing
2019-04-24 09:57:38 +08:00
Zihao Yu
963be42f60
apps,litenes,cpu: use uint32_t for registers
2019-04-24 09:00:42 +08:00
Zihao Yu
1b86ce2cf2
apps,litenes: optimize a lot
2019-04-22 09:49:39 +08:00
Zihao Yu
cea7f87d78
apps,litenes,cpu: use switch-case instead of function table
2019-04-22 00:23:48 +08:00
Yanyan Jiang
5bd5d63234
Merge pull request #39 from jiangyy/fix-cputest
...
testss,cputest,Makefile: cancel rules included by Makefile.check
2019-04-21 07:15:13 +00:00
Zihao Yu
6fb18c6b47
tests,cputest,Makefile: cancel rules included by Makefile.check
...
* originally these rules will be called with empty $(BINARY)
2019-04-20 17:04:47 +08:00
Yanyan Jiang
f9dd248225
Merge pull request #37 from jiangyy/nemu-gdb
...
am,platform,nemu: add rule for gdb
2019-04-03 22:46:07 +08:00
Yanyan Jiang
b3ee42adfc
Merge pull request #36 from jiangyy/navy-static-heap
...
am,navy,trm: use static array for heap
2019-04-03 22:45:07 +08:00
Yanyan Jiang
781bead355
Merge pull request #35 from jiangyy/riscv32-nemu
...
Riscv32 nemu
2019-04-03 22:44:22 +08:00
Yanyan Jiang
04068ef4bc
Merge pull request #34 from jiangyy/fix-cputest-compile
...
tests,cputest,Makefile: set correct default rule
2019-04-03 22:43:42 +08:00
Yanyan Jiang
367176254f
Merge pull request #33 from jiangyy/mips32-nested-exception
...
am,mips32-nemu: support nested exception for QEMU
2019-04-03 22:43:20 +08:00
Yanyan Jiang
4eac8bff15
Merge pull request #32 from jiangyy/remove-reorder-flag
...
am,arch: remove -fno-reorder-functions
2019-04-03 22:42:47 +08:00
Yanyan Jiang
f7fdcd487b
Merge pull request #30 from jiangyy/riscv32-noop
...
Riscv32 noop
2019-04-03 22:42:16 +08:00
Zihao Yu
8b4f808d91
am,platform,nemu: add rule for gdb
2019-03-31 21:55:34 +08:00
Zihao Yu
6fa010728e
am,navy,trm: use static array for heap
...
* Now nanos-lite use ELF loader. Compared to binary generated by objcopy,
static array will not affect the size of the program.
2019-03-31 17:15:26 +08:00