Check potential non-existent global variables found in the DWARF information
[clinton/Virtual-Jaguar-Rx.git] / docs / vj_ReleaseNotes.txt
CommitLineData
879b84c5
JPM
1Release 4 (TBD)\r
2---------------\r
2b91c435
JPM
3Git commit: TBD\r
4-\r
879b84c5 50) The zoom value setting has been fixed in the registry\r
e857856a 61) Debugger mode now shares the same alpine rom path setting\r
1bb61ebf 72) Local variables window displays register name now\r
a2dfb8e5 83) Switch to Zlib 1.2.11 static library 64bits for VS 2017\r
169c1409 94) Switch to SDL 1.2.15 static library 64bits for VS 2017\r
1bb61ebf
JPM
105) Local variables window displays values from function's parameters\r
116) Fixed the typedef's name display in Local and Watch variables window\r
a8c13b4d
JPM
127) Breakpoint may now occur in case of a ROM cartridge writing\r
13-- ROM cartridge writing detection follow the alpine "allow writes to cartridge rom"'s flag check\r
eb20f274 14-- Alert box will display a message with possibility to pass or not the breakpoint only if this is related to a 8 or 16 bits ROM access\r
47b6ecae 158) Local variables window detects now if a variable is used or not by the code\r
8d867eb2 169) The address provided in the memory window is now verified to prevent crash\r
a2dfb8e5 17-- Wrong address will be displayed in red\r
2b91c435 1810) UI changes \r
a2dfb8e5
JPM
19-- Added new icons for the exit and status features\r
20-- Modified icons for the SP (Stack) browser\r
21-- Unified icons sizes depend on their usage (drop down menu and main menu)\r
22-- Underline the active M68K line in the disassembly window\r
23-- Allow the up/down navigation on the SP (Stack) browser\r
24-- Restart function cleans-up the SP (Stack) browser and the heap allocator system\r
2b91c435
JPM
25-- Fixed the up navigation on the memory window\r
2611) Added some log information for the emulator initialisations\r
2712) Breakpoint will happen in case of writing at unknown memory location\r
28-- Alert box will display a message and then the code will stop\r
2913) Added the DRAM size in the emulator status window\r
3014) Debugger sources code clean-up\r
3115) Added a call stack feature\r
3216) Follow platform requirement to prevent source file reading issue\r
3317) UI modifications\r
a4e46c05
JPM
34-- Modified icon for the memory window to make a distinction with the memory browser\r
35-- The all watch, and Exception Vector Table windows, can be closed using keyboard\r
36-- Renamed the debugger dedicated icons to make a distinction\r
37-- Added the call stack window\r
2b91c435 3818) Fixed a crash in the all watch window after loading a new binary without ELF/DWARF information\r
a4e46c05 39-- Previously used ELF/DWARF information was still accessible\r
2b91c435
JPM
4019) Fixed slash/backslash issue, in the Alpine tab, to follow platform requirement\r
4120) Heap allocation window uses the DRAM size limit option and detect if heap allocation shares space with SP (Stack)\r
4221) Added a Jaguar model and BIOS configuration tab\r
4322) Jaguar model and BIOS configuration integration\r
4423) Added LEB128 decoding functions\r
45-- It is used for the DWARF decoding information\r
4624) Debugger support improvement\r
47-- DWARF support for the enum type (partial), and subroutine type\r
48-- Debugger can report variable's unsigned char value\r
4925) UI modifications\r
50-- Added a status bar, better status report & information display for the heap allocation window\r
51-- Added a status bar, better status report & information display for the local variables window\r
52-- Added better information display for the exception vectors table window, and added some missing vectors\r
53-- Added a status bar, better status report & information display for the call stack window\r
54-- Added a status bar, better status report & information display for the all watches window\r
879b84c5 55\r
b1b673a3
JPM
56Release 3 (13th November 2017)\r
57------------------------------\r
a2dfb8e5
JPM
58Git commit: b1b673a3b0d19e3c2c45b6590b773b11e45bced7\r
59-\r
2d0121d4 600) Fixed the windows respawning in the next emulator launch within --alpine or --debugger options\r
8d867eb2 611) Added an Exception Vector Table window\r
be44e757
JPM
622) Modified the About window to update the credits list in a more appropriate way\r
63-- Updated the emulator application credits line\r
643) Added 'Rx' word to the emulator name\r
654) Fixed a crash when reading the DWARF information in the case of the DWARF2 format has not been used\r
1bb61ebf 665) Added ui, alpine and debugger groups in the settings\r
be44e757 676) Added the possibility to erase settings\r
1bb61ebf 687) Added the --es-all, --es-ui, --es-alpine and --es-debugger options to erase specific settings\r
024bfc46
JPM
698) Added a keybindings tab and adapted the configuration dialog tabs\r
70-- User can modify the keybindings where appropriate\r
0d612b97 71-- Keybindings UI is displayed based on the option used (--debugger, -- alpine)\r
2d0121d4
JPM
729) Fixed a crash, in Release mode, when the HW labels setting is turn on\r
7310) Solved an interference between the HW labels setting and the one used by the debugger\r
74-- The setting is now only the reference used\r
a2dfb8e5 7511) Fixed the SP (Stack) browser UI potential missing data\r
4bb7c3f5 7612) Create a directory for EEPROMs (based on the EEPROMs setting) if it doesn't already exist\r
9bf5c434 7713) Keep the scrollbar position in accordance of the M68K PC pointer\r
41d6f5f7 78-- UI displays the source without the need to move down/up the scrollbar\r
95fe01d7 7914) Fixed a crash when DWARF information report a source line number exceeding the number of lines present in a source file\r
41d6f5f7 80-- This may come from the linker vlink\r
88b2434e
JPM
8115) Improved the .heap section detection to avoid a detection error\r
82-- Depend vlink version, .heap section may have an Alloc flag\r
95fe01d7 8316) Fixed a crash when DWARF information does references to missing source code files\r
8d867eb2 8417) Added a local variables window\r
820579e2 8518) Project has switched to Visual Studio 2017 and QT 5.9.1 library\r
be44e757
JPM
86\r
87Release 2 (3rd September 2017)\r
88------------------------------\r
890) Added some error detections when reading the ELF executable file\r
901) Added all hardware labels (based on the document scans from the Version 2.4 - June 7, 1995)\r
912) "Step Over" code function for BSR/JSR functions\r
923) Added the .debug_ranges detection to avoid a detection error\r
934) DWARF support\r
94-- TAG: Compilation Unit, Subprogram, Variables, Types\r
95-- Line numbers, symbols, functions\r
8d867eb2
JPM
965) Added an All Watch window for non-local variables\r
976) Added a heap allocator window based on my own memory allocation functions\r
987) Added additional 4 memory windows with address input based on hexa, decimal or symbol name\r
be44e757
JPM
998) Windows refreshing executed only if windows is visible\r
1009) Added a restart function\r
101-- Restart only the 68000 program counter to his original set\r
10210) Modified the icons color backgound for the "Step In" and "Step Over" functions\r
10311) Updated the About window to update the credits list\r
10412) 64 bits Release executable\r
a2dfb8e5 10513) Fixed (hacking) the display of the SP (Stack) browser\r
be44e757
JPM
10614) Set the emulator in Halt mode when launched in alpine debug mode without a loaded rom\r
107-- Otherwise the 68000 program counter will have a 0 value and will execute the code at this address\r
10815) Added some information in the --help/-h/-? option\r
10916) --debugger option no longer force the log file\r
11017) Added a --dram-max option to extend the DRAM size to 8MB\r
11118) Added the "enter" key support when setting the BPM (Breapoint)\r
11219) Save the windows positions, size and visibilities (show or hide) status\r
113-- Such windows will automatically respawn in the next emulator launch\r
114\r
115Release 1 (12th February 2017)\r
116------------------------------\r
1170) BPM (Breapoint) now stop at the designated address and no longer stop after executing the code\r
1181) Clean-up the tracing / no-tracing flags for better U.I understanding\r
a2dfb8e5 1192) Added SP (Stack) browser\r
be44e757
JPM
1203) User can change now the number of lines of disassembly displayed in the tracing window\r
1214) User can turn on/off the op-codes associated in the disassembly lines displayed in the M68K tracing window\r
1bb61ebf 1225) Added an emulator status window (GPU status, M68K debugger and tracking status)\r
be44e757
JPM
1236) Added a GPU disassembly tracing window - Display the current PC pointer\r
1247) Added a DSP disassembly tracing window - Display the current PC pointer\r
a2dfb8e5 1258) Added possibility to change refresh rate of browsers when emulation is launched\r
1bb61ebf 1269) Display partial hardware labels (Internal Memory and Graphics sub-system address space) in the disassembly lines displayed in the M68K tracing window\r
be44e757
JPM
127-- Display first the hardware labels (based from the Jag V8 dev. PDF) and then the ones possibly found in the ELF debug symbol\r
12810) Minor U.I cosmetic changes\r
12911) User can turn on/off the hardware labels associated in the disassembly lines displayed in the M68K tracing window\r
130-- It doesn't apply to the hardware labels possibly found in the ELF debug symbol\r
131\r
132Release 0 (5th January 2017)\r
133----------------------------\r
1340) New option --debugger\r
1351) ELF format support\r
1362) ELF debug symbol support\r
1373) "Step Into" code function\r
1384) Menus layout dedicated to the debugger\r
1395) Added a dedicated main window for tracing (M68K)\r
1406) Added a Debugger tab in the config tab\r
1417) Visual Studio 2015 project support\r
1428) libelf-0.8.13 library support\r
1439) 64 bits debug executable only\r
144\r
145\r
146Known issues\r
147============\r
820579e2 1481) Video output is not displayed due to my OpenGL / QT5 5.5.1 integration with VS 2015 but solved when using the QT 5.9.1 package for VS 2017\r
be44e757
JPM
1492) The BPM (Breapoint) remains stuck on his address when user wants to continue the code execution\r
150-- Need to trace over the BPM or unset the BPM\r
eb20f274
JPM
151-- The issue can be prevented if the code doesn't set IRQ, otherwise the IRQ will need to be traced to get back control\r
1523) To support DWARF 2 with GCC, the code must be compiled with the -gdwarf-2 option\r
2b91c435 1534) The Local and Watch variables window may display not available type information or empty information\r
be44e757 154-- Such missing information may be included in future release\r
2b91c435 155-- The 'const' type may not be reported correctly in the DWARF information \r
be44e757
JPM
1565) The 2MB mirroring is no longer applied in case of --dram-max option usage\r
1576) Stack must reflect the --dram-max option usage otherwise the stack may be corrupted\r
158-- The application needs to set the SP (Stack) in accordance\r
a2dfb8e5 1597) The Exception Vector Table window displays only 65 vectors\r
be44e757 160-- Missing vectors may be added in future release\r
49a6ac1c
JPM
1618) User needs to manualy check if the Atari Jaguar executable match his source code files\r
162-- Otherwise, source code and assembly may not match or leads to instabilities\r
2b91c435
JPM
1639) The emulator needs to be restarted in case of the following actions occur\r
164-- Keybindings changes\r
165-- BIOS selection changes and without new executable load\r
a2dfb8e5
JPM
16610) In the case of a ROM cartridge writing, and with occuring breakpoint, the PC pointer will point at the next instruction and not at the instruction causing the breakpoint\r
16711) Emulator will crash in case of wrong address value provided in the memory browser\r
a8c13b4d 16812) The RAM access log is limited to the 2MB\r
be44e757
JPM
169\r
170Cosmetic / UX issues\r
171====================\r
1721) The SP (Stack) icon color backgound doesn't look similar with the other ones\r
a2dfb8e5
JPM
1732) The SP (Stack) browser size always open at a forced size no matter if the size has been changed\r
1743) Not every features have associated keybindings\r
be44e757
JPM
175\r
176Legacy issues/hints\r
177===================\r
1781) Emulator seems to have easter egg(s)\r
179-- The option --yarrr displays a single message and end the application\r
2d0121d4 180-- Pressing F8, while in the main window, will create an extra message in the log file\r
be44e757
JPM
1812) The --alpine option force the log file but it can be override if --no-log option is set after the --alpine option\r
182\r
183Project information\r
184===================\r
024bfc46 1851) Code based on the Shamus Hammons source code available via Gethub by the 12th September 2017 (2.1.3 Final)\r
820579e2
JPM
1862) Visual Studio 2015/2017 project support for 64 bits\r
1873) libelf 0.8.13 library 64bits for VS 2015/2017\r
1bb61ebf 1884) libdwarf 1.41 library 64bits for VS 2015, cygwin64 and Msys2/MinGW64\r
be44e757 1895) QT 5.5.1 library 64bits for VS 2015\r
820579e2 1906) QT 5.9.1 library 64bits for VS 2017\r
e857856a
JPM
1917) Zlib 1.2.8 library 64bits for VS 2015\r
1927) Zlib 1.2.11 library 64bits for VS 2017\r
169c1409 1938) SDL 1.2.15 library 64bits for VS 2015/2017\r
820579e2
JPM
1949) The original make files have been modified to follow the requirements and modifications\r
19510) The 'Rx' word has been added to the emulator name to make distinction with the official version\r
19611) The project source is set at https://github.com/djipi/Virtual-Jaguar-Rx\r
19712) GPLv3 file document has been renamed as LICENSE, to fit better the GitHub requirements\r
be44e757
JPM
198-- Text / License terms are the same\r
199\r
200\r
201Download statistics\r
202-------------------\r
203jaguar64eu : 15 downloads for the Release 0 on the 12th Feb, 2017\r
204jaguar64eu : 18 downloads for the Release 1 on the 21st May, 2017\r
e857856a
JPM
205No downloads statistics available for the Release 2\r
206No downloads statistics available for the Release 3\r