Rekai Nyangadzayi Musuka
fe19b19fc7
fix: properly resovle stack UAF
2022-10-21 05:12:59 -03:00
Rekai Nyangadzayi Musuka
e709c2030c
chore: shorten `orelse @panic` to `.?`
2022-10-21 05:12:59 -03:00
Rekai Nyangadzayi Musuka
5725bbbe35
fix: update GpioData extern union
...
u4's are no longer supported in extern unions :\
2022-10-21 05:12:59 -03:00
Rekai Nyangadzayi Musuka
372bfdc5f6
tmp: incomplete impl of GPIO + RTC
2022-10-21 05:12:58 -03:00
Rekai Nyangadzayi Musuka
8553ab6e6d
chore: Guilty Gear X expects these I/O Registers
2022-10-21 05:12:58 -03:00
Rekai Nyangadzayi Musuka
fad5c9e632
feat: implement open bus for unmapped i/o
2022-10-21 05:12:58 -03:00
Rekai Nyangadzayi Musuka
5fb5247d0e
chore: comment open bus impl
2022-10-21 05:12:58 -03:00
Rekai Nyangadzayi Musuka
75be6aa82a
chore: update dependencies
2022-10-21 05:12:58 -03:00
Rekai Nyangadzayi Musuka
0b8cc30d4d
chore: Update README.md
2022-10-21 05:12:58 -03:00
Rekai Nyangadzayi Musuka
d2a50cf9d2
feat: reimplement audio sync
...
APU will now drop samples if the Audio Queue is already full, therefore
creating a "sped-up" effect when the emulator runs faster than 100%
2022-10-21 05:12:57 -03:00
Rekai Nyangadzayi Musuka
b2386a6a2b
chore: move arm/thumb lut idx functions
2022-10-21 05:12:57 -03:00
Rekai Nyangadzayi Musuka
22fbe380eb
chore: update dependencies
2022-10-21 05:12:57 -03:00
Rekai Nyangadzayi Musuka
f2b27f31f4
chore: better conform to zig idioms
2022-10-21 05:12:57 -03:00
Rekai Nyangadzayi Musuka
867025b1ec
chore: rename arm7tdmi variables to just cpu
...
Less verbose, specifying arm7tdmi doesn't really do much when there's
no other CPU in the system
2022-10-21 05:12:57 -03:00
Rekai Nyangadzayi Musuka
9b0f54b111
chore: allocate sprite array on heap
...
Each Sprite optional is 10 bytes meaning I'm allocating 1.28Kb on the
stack which isn't necessary.
2022-10-21 05:12:56 -03:00
Rekai Nyangadzayi Musuka
4cf58f1faa
chore: improve init/deinit methods
2022-10-21 05:12:56 -03:00
Rekai Nyangadzayi Musuka
1a56f957c1
chore: reorganize some code
2022-10-21 05:12:56 -03:00
Rekai Nyangadzayi Musuka
1a4a2a56a3
chore: pass the allocator as an argument more often
...
As of right now, I think the only cases where I shouldn't explicitly pass an allocator
are in read/write functions and deinits
2022-10-21 05:12:56 -03:00
Rekai Nyangadzayi Musuka
c701156ce6
fix: resolve use-afer-free in backup.zig
...
This worked fine on stage1, and works fine in debug in stage3.
However, stage3 ReleaseSafe would panic due to what I assume must
have been an undefined behaviour optimization.
While I'm happy that I was quickly made aware of the issue thanks to
the safety checks in ReleaseSafe I do wish that this issue showed itself
in Debug, since I *am* using the GPA
2022-10-21 05:12:56 -03:00
Rekai Nyangadzayi Musuka
4b6897aedf
feat: Get ZBA working on Zig's new stage2/stage3 compiler
2022-10-21 05:12:55 -03:00
Rekai Nyangadzayi Musuka
1471288969
chore: move window scale const to emu.zig
2022-10-21 05:12:55 -03:00
Rekai Nyangadzayi Musuka
7488fd7fd5
fix: reimpl debug reads w/out throwing away *const Self
2022-10-21 05:12:55 -03:00
Rekai Nyangadzayi Musuka
20056eff2c
chore: update dependencies:
2022-10-21 05:12:55 -03:00
Rekai Nyangadzayi Musuka
3f760fccaf
feat: reimplement cpu logging
2022-10-21 05:12:55 -03:00
Rekai Nyangadzayi Musuka
f833de765c
chore: don't init bus in Arm7tdmi init
2022-10-21 05:12:55 -03:00
Rekai Nyangadzayi Musuka
aa19ef5f71
feat: move arm instr decoding to module
2022-10-21 05:12:54 -03:00
Rekai Nyangadzayi Musuka
f0284107f9
feat: move thumb instr decoding to module
2022-10-21 05:12:54 -03:00
Rekai Nyangadzayi Musuka
91c94fe528
chore: change directory structure
2022-10-21 05:12:54 -03:00
Rekai Nyangadzayi Musuka
45fc49b216
fix: reimplement halt fast-forwarding
2022-10-21 05:12:54 -03:00
Rekai Nyangadzayi Musuka
0939d6d7bc
chore: move audio sync, video sync variables
2022-10-21 05:12:53 -03:00
Rekai Nyangadzayi Musuka
e7b5410509
chore: update README.md
2022-10-21 05:12:53 -03:00
Rekai Nyangadzayi Musuka
2758e511ea
chore: update SDL.zig
2022-10-21 05:12:53 -03:00
Rekai Nyangadzayi Musuka
46ee21f464
feat: impl WININ, WINOUT, WIN{N}H and WIN{N}V
2022-10-21 05:12:53 -03:00
Rekai Nyangadzayi Musuka
0287c9a260
fix: force align DMA transfers
2022-10-21 05:12:53 -03:00
Rekai Nyangadzayi Musuka
665767c250
fix: resolve bugs in VRAM unpredictable read/writes
2022-10-21 05:12:53 -03:00
Rekai Nyangadzayi Musuka
0fd8a13a93
fix: don't start HDMA in vblank
2022-10-21 05:12:52 -03:00
Rekai Nyangadzayi Musuka
125b931d0c
feat: implement brightness increase/decrease
2022-10-21 05:12:52 -03:00
Rekai Nyangadzayi Musuka
27259c97db
feat: implement object blending
2022-10-21 05:12:52 -03:00
Rekai Nyangadzayi Musuka
9479838614
feat: implement background alpha blending
2022-10-21 05:12:52 -03:00
Rekai Nyangadzayi Musuka
8a203ff05f
feat: implement BLDCNT, BLDALPHA, BLDY
2022-10-21 05:12:52 -03:00
Rekai Nyangadzayi Musuka
39f71730e0
chore: update README
2022-10-21 05:12:52 -03:00
Rekai Nyangadzayi Musuka
33f993c19d
chore: rename + remove some code
2022-10-21 05:12:51 -03:00
Rekai Nyangadzayi Musuka
18ec16eb6d
fix: properly fire DMA IRQs
...
This resolves Sound DMA Timing issues present in DOOM
2022-10-21 05:12:51 -03:00
Rekai Nyangadzayi Musuka
bf558922f9
chore: rename Dma.active to Dma.in_progress
2022-10-21 05:12:51 -03:00
Rekai Nyangadzayi Musuka
e87bda7584
chore: rewrite info log message
2022-10-21 05:12:51 -03:00
Rekai Nyangadzayi Musuka
87dc70436c
feat: implement NR10 obscure behaviour
2022-10-21 05:12:51 -03:00
Rekai Nyangadzayi Musuka
5dd78177f4
feat: handle all I/O when using Cult-Of-GBA BIOS
2022-10-21 05:12:51 -03:00
Rekai Nyangadzayi Musuka
203af4c471
chore: 32-bit reads for PSG audio
2022-10-21 05:12:50 -03:00
Rekai Nyangadzayi Musuka
98223d9e5a
chore: implement more than just 1 cycle per mem access
2022-10-21 05:12:50 -03:00
Rekai Nyangadzayi Musuka
e8cc0dfabb
fix: implement register reads for Yoshi's Island
2022-10-21 05:12:50 -03:00