Files
gbdk-2020/docs
Michel Iwaniec 5acc7cfbae NES: Improve TIMER interrupt emulation (#774)
- Move TIM ISR emulation to dedicated function .tim_emulation and dedicated file timer_isr.s

- Make TIM ISR emulation save entirety of ALL_REGTEMPS_BEGIN to ALL_REGTEMPS_END

- Improve emulation to allow average TIM rate to be faster compared to vblank rate

- Add support for consistent average TIM rate on PAL, for a less system-dependent timer

- Add support for different base dividers defined by GB-like TAC_REG variable

- Add defines values for "vblank parity mode" to global.s and nes.h

- Update crt0 init code to set TMA_REG to vblank parity mode correctly for PAL/Dendy

- Update documentation, describing the improved GB TIM emulation and vblank parity mode

- Update cross-platform IRQ example to better showcase the emulation
2025-05-06 11:40:17 +01:00
..
2022-11-05 23:47:14 -08:00
2024-06-08 00:17:45 -07:00
2025-04-21 02:54:05 -07:00

        ------------------------------------------------------
        GBDK-2020 - https://github.com/gbdk-2020/gbdk-2020
        ------------------------------------------------------

What's New
------------
See the "ChangeLog" included in the root folder of the GBDK install.



New Releases
------------
Check for new releases online:
https://github.com/gbdk-2020/gbdk-2020/releases



Setup:
------------

=== Windows ===

* Unzip to a folder of your choice (which you've probably already done)
    Suggested location: c:\gbdk\

* Recommended but not required: Add the gbdk 'bin' sub-directory to your
  system path using the Windows System control panel

* Open a command line and compile the examples by running "compile.bat" in
  the "examples\gb" sub-directory:
    cd c:\gbdk\examples\gb
    compile.bat


=== Linux ===

* Unzip to a folder of your choice (which you've probably already done)
    Suggested location: /opt/gbdk/

* Recommended but not required:
    - Add the gbdk 'bin' sub-directory to your shell path. For example: export PATH=$PATH:/opt/gbdk/bin
    - These can be set temporarily in the current shell or added to your shell defaults permanently.

* Note: The GBDKDIR environment variable is not necessary to set in most cases. When lcc is
  called it will attempt to determine the current working directory automatically on it's own.
  When GBDKDIR is used it requires a trailing slash, for example: export GBDKDIR=/opt/gbdk/

* Open a command line and compile the examples by running "make" in
  the "examples/gb" sub-directory:
    cd /opt/gbdk/examples/gb
    make



GBDK is now ready for use.

It's recommended to check out the Getting Started docs: 
https://gbdk-2020.github.io/gbdk-2020/docs/api/docs_getting_started.html



Reporting problems and feature requests
---------------------------------------
1.  Make sure that you have read this README fully.

2.  Check the online docs, including the Getting Started section
    https://gbdk-2020.github.io/gbdk-2020/docs/api
    https://gbdk-2020.github.io/gbdk-2020/docs/api/docs_links_and_tools.html#links_help_and_community

3.  Make sure you have the latest version
    https://github.com/gbdk-2020/gbdk-2020/releases

4.  Check if anyone else has already reported or solved the problem
    https://github.com/gbdk-2020/gbdk-2020/issues?q=is%3Aissue+is%3Aclosed

5.  Ask for help online
    https://github.com/gbdk-2020/gbdk-2020#discord-servers


Documentation
-------------

Library documentation:
* https://gbdk-2020.github.io/gbdk-2020/docs/api

Pandocs
* https://gbdev.io/pandocs/

Other useful links:
* https://gbdk-2020.github.io/gbdk-2020/docs/api/docs_getting_started.html

* https://gbdk-2020.github.io/gbdk-2020/docs/api/docs_links_and_tools.html#links_help_and_community
    


History
-------------

Original work on GBDK (pre-2020) was by:

Pascal Felber, Lars Malmborg, Michael Hope (and perhaps others)