Skip to content

Releases: Andy4495/AY3891x

AY3891x v2.0.1

19 Apr 04:38

Choose a tag to compare

What's Changed

  • Add new public method byte writeThenRead(byte regAddr, byte data)
    • Writes data to register regAddress then immediately reads back the contents and returns a byte value
    • The value is read back without latching in a register address in between the write and the read
  • Add Example 8 - Check Original or Clone
    • Uses the new method to write 31 to register 1 and read the value back
    • The returned value can be used as a way to test if a chip is an AY-3-8910, a YM2149, or other clone
    • This example makes use of undocumented register bits and therefore may not be a definitive method to determine the chip type

Full Changelog: v2.0.0...v2.0.1

AY3891x v2.0.0

31 Dec 22:51
a8c6063

Choose a tag to compare

What's Changed

  • Decrease tDW by @berarma in #3
  • Optimized bus control signal timing for all state changes (inspired by above pull request) (merged in #4)
  • Clarified README and constructor comments to note that BDIR, BC2, BC1 are required signals for this library to work correctly

Note

  • The library API did not change
  • The bus control signal timing changed. In particular, the duration of the READ and WRITE signals to the chip will have decreased. On a 16 MHz ATmega 328, the access times changed from about 15 us to 4.5 us
    • This is particularly important for the WRITE case, as most datasheets list a maximum WRITE time (tDW) of 10 us
  • Interrupts are disabled for about 4.5 us during a WRITE operation
    • This ensures a consistent WRITE timing
    • Previous versions of this library did not disable interrupts
  • These changes should typically have no negative affect on any existing code, but code that is particularly dependent on timing may behave differently with this version

New Contributors

Full Changelog: v1.1.3...v2.0.0

AY3891x Library v1.1.3

15 Sep 01:07

Choose a tag to compare

Update examples for stm32 and esp compatibility.

No changes to the actual library code.

Full Changelog: v1.1.2...v1.1.3

AY3891x Library v1.1.2

25 Jul 17:06

Choose a tag to compare

README clarifications, example code cleanup, add arduino-lint action.

Library functionality unchanged from v1.1.1.

Full Changelog: v1.1.1...v1.1.2

AY3891x Library v1.1.1

27 Jun 03:32

Choose a tag to compare

Documentation changes. No functional or API changes.

Full Changelog: v1.1.0...v1.1.1

AY3891x Library

24 Aug 17:08

Choose a tag to compare

Declare Notes[] array as PROGMEM to save RAM. Fixes #1.

Note that as of version 1.1.0 of the library, the Notes[] array in AY3891x_sounds.h is defined as PROGMEM. This will require minor changes to any sketches which include this file and use the Notes[] array. See example programs 3 and 5.

AY3891x Library

22 Mar 03:23
c6039f6

Choose a tag to compare

Fix Example 7 so it closes files when done.

AY3891x Library

26 Feb 02:42
3030736

Choose a tag to compare

Update example 7 to support pressing a button to advance to next song on SD card.
Add hardware implementation info in extras/hardware folder.

AY3891x Library

24 Feb 17:57
db22c40

Choose a tag to compare

Add Examples 6 and 7 - chiptunes players.

AY3891x Library

16 Jan 23:12

Choose a tag to compare

Updates to examples and READMEs. No changes to library functionality.