salvy
b7f2771819
[!] Implemented osAiSetNextBuffer correctly (optimized it too)
...
[!] Allocate 8 bytes of memory to handle SP_PC_REG and SP_IBITS_REG (so we can use the pointer table opt and fix some bugs in OSHLE when setting pc)
[~] Removed nasty hack from osAiGetLength (no longer required since osAiSetNextBuffer is implemented correctly)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@760 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-09-02 03:00:53 +00:00
salvy
0f74f9f891
[!] Optimized VI read/write
...
[!] Fixed a bug in PI write
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@759 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-09-01 02:10:49 +00:00
Corn
c94fe6d32f
[!] Use jump table to select native textures
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@758 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-08-31 18:27:03 +00:00
salvy
431750adf5
[+] Use a jump table for ConvertImage
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@757 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-08-29 20:43:27 +00:00
salvy
4bd5078b16
[!] Increase both MAX_VERTICES and MAX_CLIPPED_VERTS (Fixes Flying Dragon crashing)
...
[!] Fixed debug build
[~] Silenced some annoying asserts
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@756 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-08-22 19:37:56 +00:00
salvy
79d10a560f
[!] Moved check if palette address is NULL for palette textures (Now is only check when trying to load a palletized texture)
...
[~] Removed unused tables from convert image
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@755 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-08-22 16:28:21 +00:00
salvy
9ff9d265a2
[-] Bye bye murmur2 hash
...
[!] Made slow memory access compatible with recent changes
[+] Added DKR64 hack which makes DK64 boot (This is disabled since we ignore IMEM transfers for speed which is required for DK64)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@754 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-08-22 16:13:10 +00:00
Corn
d0965caec6
[!] Abort texture generation if palette address is NULL for palette textures
...
[!] small optimization of hash function.
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@753 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-08-21 21:08:17 +00:00
Corn
b513fbc09b
[!] Removed optimization of LBU for banjo while using dynarec mem opt.
...
[!] Changed to a simpler hash for texture indexing.
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@752 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-08-19 14:43:02 +00:00
salvy
27061a6765
[=>] Merged from Daedalus js port:
...
[+] Added new hash for microcodes (MurmurHash2 wasn't endian friendly)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@751 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-08-18 21:51:17 +00:00
Corn
7daabc6eda
[!] Optimized branch delay slots in dynarec service routines
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@750 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-08-15 18:48:53 +00:00
Corn
fc3435211f
[!] Fixed dynarec access to broken pointer from previous rev
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@749 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-08-15 17:54:28 +00:00
salvy
05336a5db3
[!] Made DAEDALUS_ALIGN_REGISTERS compatible with previous changes (Might be a good idea to give it another shot since we have decreased register pressure lately)
...
[~] Forgot to twiddle address in previous commit
[+] Add back svnversion.h (Still needed when compiling Daedalus in cygwin)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@748 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-08-15 01:05:06 +00:00
salvy
ed7c346f47
[!] Optimized memory pointer table optimization (faster, and no longer computes the address twice when table is invalid) (Note: Dynarec is broken! Need to update DynaRecStubs.s)
...
[~] Removed "fast" memory write table (pointer table was already optimizing out) (saves memory too!)
[!] Increased maximum of clipped verts (Fixes Mortal Kombat 4) (Thnx jeanpave for reporting it)
[-] Reverted previous commit (I assumed wrongly that memory alloc was done in word size.. thnx Corn for pointing out!)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@747 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-08-15 00:27:28 +00:00
salvy
cbf9f1ff31
[!] Reduced PIF RAM even more, now is only 16 bytes
...
[!] Pre-swap when writing to PIF RAM, also simplified MemoryUpdatePIF
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@746 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-08-01 17:01:08 +00:00
salvy
90af62af88
[!] Reduce PIF RAM usage from 2048 bytes to 64 (It can be reduced more, but need to do some tests first)
...
[!] Enabled SI hack for Cruisn' USA (it boots now)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@745 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-08-01 09:13:05 +00:00
salvy
86bf8344e9
[!] Simplify a few more things in Memory.cpp
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@744 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-08-01 07:07:46 +00:00
salvy
79f63e0b98
[!] Do not allocate memory for RD_REG4,RD_REG4,and DPS_REG (They are unused anyways)
...
[!] Simplified mapping Rom region (It'll use new memory mapping, as a result will respect Rom boundary as well)
[~] Some small clean ups
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@743 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-08-01 06:10:43 +00:00
salvy
d17c919540
[+] Add support for games that write to ROM (Bug's Life and Toy Story 2 boot now)
...
[!] Use fast memory read for DPC, AI, and SI reg
[!] Removed memory bound checking (paranoid checks..this was already disabled in release mode anyways)
[!} Several clean ups in memory.cpp
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@742 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-31 12:03:24 +00:00
Corn
3088c99ef2
[!] Fixed some dynarec constants that slowed down War Gods and PD
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@741 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-29 11:30:23 +00:00
salvy
6328ce297b
[!] Games that use EPAK should work again
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@740 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-29 03:35:29 +00:00
salvy
02698955e6
[!] Rewrote N64 memory initialization (This based from 1964 and Mupen)
...
[!] Simplified ReadRom/WriteValue_Cartridge (FlashRam read/write is more robust too)
[!] Use attribute const for ReadAddress (hints compiler to optimize further)
[~] Lotsa of clean ups in Memory.cpp etc
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@739 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-28 07:21:28 +00:00
Corn
4502ef5f4f
[!] It is now possible to map emulated CPU/FPUregs to psp scratchpad
...
[!] Debug_console is now possible to compile without silent flag
[!] Adjustments to dynarec/traces parameters
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@738 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-24 20:30:44 +00:00
Corn
bc7a7177a2
[!] Added showing handled speed hacks (with OP code) in dynarec (undef DAEDALUS_SILENT)
...
[!] moved some code under DAEDALUS_SILENT to DAEDALUS_DEBUG_CONSOLE and DAEDALUS_DEBUG_DISPLAYLIST
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@737 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-24 13:40:26 +00:00
salvy
fbcfff31df
[~] Fixed debug build
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@736 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-18 08:02:06 +00:00
Corn
585696e11f
[!] Some cleanup after 64bit to 32bit register changes
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@735 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-17 19:05:23 +00:00
salvy
cfb4c3a995
[!] FPU reg is now 32bit
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@734 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-17 14:53:35 +00:00
salvy
36f553f465
[!] FPUControl is now 32bit
...
[!] Some small optimizations in OSHLE
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@733 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-17 14:37:15 +00:00
salvy
36486b8e2f
[<=] Reverted previous commit, broke several parts of the GUI
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@732 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-17 12:54:04 +00:00
Wally4000
28ca1f7188
[~] Fix SVNVersion so it compiles all times.
...
[~] Tidy up Text_Area Commands into new file UIArea.h (Saves 3KB)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@731 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-17 09:10:37 +00:00
Corn
9f6a16deb7
[!] CPUControl is now 32bit (from 64bit)
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@730 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-16 09:51:56 +00:00
Corn
fd9afeaa08
[!] Added possibility to scroll ASM when PSP BSODs (require #undef DAEDALUS_SILENT)
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@729 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-14 18:29:30 +00:00
Corn
81cf7272a8
[!] reverted and corrected logic in previous rev
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@728 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-14 12:54:57 +00:00
salvy
42efe81f35
[!] Improved previous optimization when register is known and is zero (they are basically a NOP), also added another opt for AND
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@727 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-14 10:53:40 +00:00
salvy
d50d7c572c
[!] Improve detection when hi reg isn't needed in GenerateOR
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@726 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-14 01:42:38 +00:00
Corn
2040fa0d98
[!] Optimizing AND/OR/XOR for when one of the hi regs are known and =0, small speedup
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@725 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-13 19:51:00 +00:00
salvy
c630081391
[!] SDC1,LDC1,LDL,LDR,COP0 (except ERET) don't need PC, removed entries which are already handled in dynarec too
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@724 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-13 11:19:02 +00:00
Corn
1ea759305e
[!] fix for CBFD using LWR op
...
[!] fix for CBFD using AND op
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@723 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-13 09:57:10 +00:00
Corn
3630f80a4e
[!] Removed redundant checks for operations on hi part of CPU regs in DynaRec
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@722 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-12 19:54:16 +00:00
Corn
220eda6b60
[!] Dynarec: reimplemented LWL & LWR OPs with much simpler code (faster)
...
[!] Dynarec: implemented SWL & SWR OPs
[!] Framelimiter now averages with 4 frames (converge faster)
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@721 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-12 10:16:32 +00:00
Corn
196a2dcaca
[!] Reworked exception/BSOD information screen and log
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@720 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-11 16:42:22 +00:00
Corn
174c443405
[!] Made LoopOpt is more stable
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@719 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-10 22:53:35 +00:00
Corn
d5a8ab79e8
[!] Fixed bug that never enabled LoopOpt. (LoopOpt still only works in a few games like SM64)
...
[!] Cleaned up BSOD text dump (shows when registers are pointing in RDRAM)
[+] added EXT & INS in disassembly and fixed MSB/LSB order
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@718 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-10 19:01:08 +00:00
Corn
6087b03842
[+] Added LWL and LWR OP codes to Dynarec
...
[!] Only use real doubles in dynarec if forced from ROM hacks
[!] Some clean up and removal of Dynarec test code
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@717 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-10 13:40:15 +00:00
Corn
09fc9d323f
[!] optimization of Patch_strchr() (OSHLE)
...
[+] some comments
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@716 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-09 20:32:52 +00:00
salvy
192b71d8a2
[!] Rewrote logic to check if 32bit in dynarec
...
[-] Removed checking if register was mapped as 32bit
[!] GenerateADDU : Sign extend when rt/rs is 0
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@715 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-09 20:07:35 +00:00
salvy
23d95254ed
[-] Revert skipping sign extension when registers are mapped as 32bit
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@714 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-07-09 16:57:51 +00:00
Wally4000
916b7c72e2
Updated uCode files for case sensitive OS's
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@713 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-26 08:54:40 +00:00
salvy
850496599d
[!] Skip sign extension in GenerateLW when base is mapped as 32bit (speed up, getting closer to fullspeed in Zelda, will enable this opt for more ops after some more testing)
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@712 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-23 09:38:26 +00:00
salvy
ab734bc60e
[!] Fixed blitting not scaling properly (we'll use the simple version of blit as well for now)
...
git-svn-id: https://subversion.assembla.com/svn/Daedalusx64/trunk@711 42e9bfbe-799a-4a2d-bad1-236e862a387a
2012-06-22 07:04:12 +00:00