Zihao Yu
ed7ae6225f
apps,litenes,roms: add more roms
2019-11-29 19:53:30 +08:00
Zihao Yu
29c4241896
apps,litenes,roms: fix kungfu
2019-11-29 19:53:22 +08:00
Zihao Yu
1e85b4390c
apps,nesemu2: remove most libc calls and run on x86-nemu and mips32-nemu
...
* riscv32-nemu needs __clzsi2() and __ctzsi2() to run
* there is still a render bug for x86-nemu
2019-11-29 16:58:52 +08:00
Zihao Yu
f3dd5def39
apps,litenes,Makefile: add rules for generating ROM source files
...
* The shell commands are evaluated before rule execution. If we run
`make` for the first time, the `$SRCS` will not include the ROM source
files, which leads to linking error.
* Now we add a rule to first manually generate the ROM source files.
2019-09-08 16:33:06 +08:00
Zihao Yu
93874f23fe
apps,litenes: use %-style format for build-roms.py
...
* f-style format only avaliable with python version above 3.6
2019-06-13 10:52:09 +08:00
Yanyan Jiang
b22a9041fe
am: let `main()` to receive arguments
...
* add mainargs for x86-qemu, works good for litenes
* port microbench to mainargs
* fix native am
* fix litenes: not include generated .c
* restore back to main
* fix microbench at native
* start amtest, with interesting bug
* add unit test framework
* fix native archive removal
2019-06-13 10:43:59 +08:00
Zihao Yu
ed0f10a778
Revert "apps,litenes: use uint16_t for word memory accessing"
...
This reverts commit 5ae9a76c1e
.
* it may cause unaligned memory accessing on riscv32 and mips32
2019-05-09 20:24:46 +08:00
Yanyan Jiang
4f186f5da9
am: merge changes
2019-05-07 05:02:21 +00:00
Yanyan Jiang
aea00f757d
litenes: lock FPS to 60
2019-05-06 18:36:36 +00:00
Yanyan Jiang
e39f4f4d39
x86-qemu, makefiles: fixes, remove x86 tracing (need redesign)
2019-05-06 17:45:53 +08:00
Yanyan Jiang
6102652dc8
x86-qemu, makefiles: simplify ld commands
2019-05-06 17:11:43 +08:00
Zihao Yu
8ac4d491b8
apps,litenes,fce: do not wait for next frame if the current frame is skipped
2019-05-02 20:14:48 +08:00
Zihao Yu
6d9672f6e8
apps,litenes,ppu: process one frame in ppu_frame()
...
* this makes it possible to use more aggressive code for skip frame
2019-05-02 19:40:53 +08:00
Zihao Yu
aa54af854c
apps,litenes,ppu: fix buffer overflow bug when drawing sprite with y > H
2019-05-02 18:18:35 +08:00
Zihao Yu
b7af5518f6
apps,litenes: smaller memory consumption
2019-05-02 15:55:15 +08:00
Zihao Yu
c0524c8890
apps,litenes,ppu: simply sprite0 hit checking
2019-05-02 15:28:08 +08:00
Zihao Yu
b9161a8568
apps,litenes,fce: use smaller screen array
2019-05-02 13:30:55 +08:00
Zihao Yu
4c772f1a1e
apps,litenes,ppu: refactor scanline drawing
2019-05-02 11:30:10 +08:00
Zihao Yu
86476dc148
apps,litenes,ppu: only draw the scanline covered by sprite0 for hit check
2019-05-01 16:15:07 +08:00
Zihao Yu
5da7efea86
apps,litenes,ppu: re-organize pattern table to fetch XHLidx friendly
2019-05-01 13:46:02 +08:00
Zihao Yu
14422979c5
apps,litenes,ppu: split scanline updating from drawing
2019-05-01 11:55:45 +08:00
Zihao Yu
4e18c1bff3
apps,litenes,ppu: store XHLidx to check sprite0 hit, instead of XHL value
2019-05-01 11:06:00 +08:00
Zihao Yu
c4abe72189
apps,litenes,ppu: directly set color16 to background for all pass
...
* Since last commit, the non-mirror pass and the mirror pass do not
overlap. Combining them will give the complete screen.
2019-05-01 10:17:57 +08:00
Zihao Yu
c4b65cfa51
apps,litenes,ppu: skip tile_x which is on the left of the screen
2019-04-30 22:16:26 +08:00
Zihao Yu
34bd77711a
apps,litenes,ppu: draw background scanline with bbg color directly
2019-04-30 22:14:26 +08:00
Zihao Yu
2469881c61
apps,litenes,ppu: directly set color16 to background for the non-mirror pass
2019-04-30 18:29:34 +08:00
Zihao Yu
5ae9a76c1e
apps,litenes: use uint16_t for word memory accessing
2019-04-30 11:55:48 +08:00
Zihao Yu
342e5ec844
apps,litenes,cpu: skip spin
2019-04-30 11:26:46 +08:00
Zihao Yu
4095581af4
apps,litenes,ppu: refactor profiling code
2019-04-29 16:20:01 +08:00
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