Commit graph

55 commits

Author SHA1 Message Date
cam900
e9b6b441e3 Merge branch 'master' of https://github.com/tildearrow/furnace into getSampleMemOffset 2025-08-27 21:18:29 +09:00
tildearrow
387d9e0654 breaking the limit, part 2
all dispatches adapted to 32768 samples.
sample limit unlocked.
testing is required.
2025-07-27 20:16:59 -05:00
cam900
a5148a3441 Implement getSampleMemOffset for further optimize VGM logging (specifically OPL4 PCM) 2025-06-04 21:16:27 +09:00
cam900
967e717396 ES5506: Fix pingpong loop 2025-06-02 16:56:41 +09:00
cam900
ece9dd83c7 ES5506: Fix sample direction 2025-06-02 16:38:15 +09:00
cam900
f3aca62e7a E5506: Fix masked CR writing, Fix type 2025-06-02 15:38:03 +09:00
cam900
205e2124b6 Fix some ES5506 VGM write feature (but still incomplete)
8 bit addWrite because ES5506 host interface is 8 bit width.
2025-06-01 19:19:42 +09:00
tildearrow
00ad4e4a46 update copyright year 2025-01-28 18:49:19 -05:00
tildearrow
f68249f52b fix F1/F2 with note?
issue #1964
2024-07-03 16:55:28 -05:00
tildearrow
6d8a343ead ES5506: Amiga pitch option...... 2024-06-24 02:44:17 -05:00
tildearrow
106bbf9e1a ES5506: add Amiga volume mode 2024-06-23 19:38:03 -05:00
tildearrow
92ec6f6651 memory composition, part 3 2024-03-05 18:55:18 -05:00
tildearrow
88b42ddd58 update copyright year 2024-01-16 21:26:57 -05:00
tildearrow
6df06a7f89 Revert "prepare for volume handling refactor"
sorry......... this refactor is canceled as it seems harder than I thought...
2023-11-04 04:13:47 -05:00
tildearrow
4bc5f49fe6 prepare for volume handling refactor 2023-11-01 20:43:48 -05:00
tildearrow
9a63fdccd5 drop usage of std::deque, part 2 2023-09-13 02:46:02 -05:00
tildearrow
c9cbf133d6 Eknous please HELP ME 2023-08-23 17:25:05 -05:00
tildearrow
708c363635 FixedQueue, part 2 2023-07-13 04:09:20 -05:00
cam900
97bb0572b6 Possibly fix ES5506 sample offset command 2023-02-13 07:52:52 +09:00
tildearrow
e2e0afd18a ES5506: add a volume scale parameter 2023-02-12 02:11:03 -05:00
tildearrow
11154923b0 ES5506: I am blowing up now 2023-02-12 02:02:22 -05:00
tildearrow
c9eb4482b0 ES5506: new vol/pan range is 4095 2023-02-12 01:48:02 -05:00
tildearrow
0533f10ef4 ES5506: and more optimization... 2023-02-11 16:11:39 -05:00
tildearrow
c0190b81cb ES5506: optimize more 2023-02-11 04:21:15 -05:00
tildearrow
cdc472dace and fix IT AGAIN
I hate tabs
2023-02-06 01:25:59 -05:00
tildearrow
8c2af08e5a fix the pull request
also what did that force push do? did I lose commits now?
2023-02-06 01:08:31 -05:00
cam900
2c5dc0875a Address comments 2023-02-06 09:16:28 +09:00
cam900
9577303451 Update copyright years 2023-01-24 08:16:56 +09:00
cam900
536c345763 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-01-12 23:31:56 +09:00
cam900
2e7a0c37e3 Add DIV_CMD_SAMPLE_DIR command and macro 2022-12-15 17:35:01 +09:00
cam900
1c4138dcff Sync with master 2022-12-14 14:13:17 +09:00
cam900
f6cfc72b39 Sync with master 2022-12-13 14:53:00 +09:00
cam900
7867b59580 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-11-30 17:39:43 +09:00
cam900
72594d978b Fix ES5506 command before keyon, Fix freqOffs change behavior, Fix initializing behavior, Reduce unnecessary variable 2022-10-29 21:49:31 +09:00
cam900
87cb3c49a4 Update ES5506:
Remove transwave for now
- It consumes high CPU usage, so possibly little headroom for anything else.
Fix per-voice OSC via git master
Fix default channel for ES5506
Fix macro order - Filter macro must be executed after key on
Add SSV preset
2022-10-22 17:19:39 +09:00
cam900
c83d919fbc Sync to master 2022-09-30 20:01:31 +09:00
cam900
013c7b92fb Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-09-27 00:01:10 +09:00
cam900
8e1ce1abb1 Sync to master 2022-09-25 18:32:34 +09:00
cam900
2b5bb91237 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (55 commits)
  GUI: get rid of these stupid icons
  update to-do list
  MSM6258: the final bits
  MSM6258: clock/rate selection
  MSM6258: prepare for rate changing
  Update n163.md
  YM2612: DualPCM per-channel osc
  YM2612: more DualPCM muting fixes
  YM2612: fix DualPCM muting
  GUI: finish the blank ins up
  GUI: add "blank new instrument" option
  GUI: add mono/poly note preview button
  PC speaker: don't use printf/perror
  YM2612: CSM arpeggio and slides
  YM2612: - C   S   M -
  YM2612: half-working CSM
  YM2612: earliest completely untested CSM work
  delay collapse/expand pattern/song feature :<
  GUI: much more stable osc view
  YM2612: fix DAC output not visible in per-chan osc
  ...

# Conflicts:
#	src/engine/platform/genesis.cpp
#	src/engine/platform/genesis.h
#	src/ta-utils.h
2022-06-26 00:36:36 +09:00
cam900
3b411cd14f Fix dead link, Frequency, Instrument editor related issue 2022-05-31 13:48:35 +09:00
cam900
cbf20c6320 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (58 commits)
  SMS: early Nuked-PSG modding
  SMS: add modified Nuked-PSG core
  build release and don't strip
  strip MinGW builds
  FDS: a bit more
  FDS: set a post-amp value
  FDS: fix NSFplay core low pass filter precision
  fix .dmf saving
  fix compilation on GCC 12
  Fix multithreading on CI
  Lynx: why did I not commit this
  Lynx: more sample improvements
  Lynx: sample improvements
  Lynx: add sample support!
  GUI: fix wavetable list oversight
  WaveSynth: fix phase modulation - again
  GUI: fix possible wave editor crash
  WaveSynth: fix phase modulation
  Lynx: add phase reset macro
  fix another fucking IGFD crash bug
  ...

# Conflicts:
#	src/gui/insEdit.cpp
#	src/gui/presets.cpp
2022-05-27 13:01:06 +09:00
cam900
17881837ab Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (64 commits)
  finish wave synth!
  update contributing guidelines
  Namco WSG: make non-linear slides faster
  wave synth work
  SoundUnit: fix order of filter bits
  GUI: add Namco arcade presets
  implement some dual wave synth effects
  Y8950: fix ADPCM VGM export
  Namco WSG: finish it up
  Namco WSG: 8 channel WSG (CUS30) now works
  Namco WSG: muting
  Namco WSG: 8 channel WSG (15xx) now works
  Namco WSG: 3 channel WSG now works
  YM2612: change key on/off strategy
  GUI: fix scrollbars not working
  Please enter the commit message for your changes.
  shhhhhhhhhhhh
  update to-do list
  Whoops
  it doesn't work (yet)
  ...

# Conflicts:
#	src/engine/dispatch.h
#	src/engine/platform/su.cpp
#	src/engine/playback.cpp
#	src/engine/sample.cpp
#	src/engine/sample.h
#	src/engine/song.h
#	src/engine/vgmOps.cpp
#	src/gui/presets.cpp
2022-05-25 00:52:00 +09:00
cam900
f7ba60bfa9 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (46 commits)
  PCE: fix two issues
  SegaPCM: fix samples bigger than 64KB
  SCC: implement VGM soft reset
  GUI: add option to clear orders
  GUI: implement "clear all subsongs"
  GUI: fix crash when deleting current subsong
  CI: only 1 core for MinGW
  Fix AY8910 envelope hangs
  OPL: fix fixed frequency drums
  pick nits: the sequel
  pick nits
  AY: fix possible hang
  hide .ftm format
  Add x2 icon variations as well
  Install more size variations on Linux
  OPLL: fix fixed drums freq
  GUI: make backupTimer atomic
  Have OPN* platforms set the correct YM2149 chip type.
  update to-do list
  ZX beeper: clarify effects (will be done later)
  ...

# Conflicts:
#	src/engine/platform/segapcm.cpp
2022-05-22 18:24:17 +09:00
cam900
028adf2c8e Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (70 commits)
  whoops
  GUI: AY8930 credits
  GUI: fix inability to close subsongs
  BANK
  OPN: wire up ExtCh system
  fix build failure
  dev95 - multiple songs in a single file (READ)
  DO NOT USE - THIS FAILS - WORK IN PROGRESS
  enforce asset limits
  old .dmf loading improvements
  add AICA and YMZ ADPCM formats
  allocate ID for YMZ280B
  harden .fur file saver
  Fix AY VGM output, Fix presets
  preparations for UI improvements
  GUI: add more presets
  prepare for ExtCh OPN/OPNA
  GUI: clarify that lock layout doesn't work yet
  GUI: remember last state of order edit mode
  GUI: store edit/followOrders/followPattern state
  ...

# Conflicts:
#	src/engine/fileOps.cpp
#	src/engine/platform/ym2610.cpp
#	src/engine/platform/ym2610b.cpp
#	src/engine/sample.cpp
#	src/engine/sample.h
#	src/engine/sysDef.cpp
#	src/gui/doAction.cpp
#	src/gui/sysConf.cpp
2022-05-18 03:09:55 +09:00
cam900
4efa711a2b Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (44 commits)
  GUI: now add ability to load VMEM
  Update sysDef.cpp
  GUI: add an option for it
  add preliminary TX81Z SysEx response
  OPL: drum volume
  OPL: implement hard reset
  GUI: add icon size setting
  GUI: macro UI refactor, part 4
  Fix WIN32 define timing in IGFD
  Fix outdated calling convention in SAASound (maybe fix MinGW)
  GUI: macro UI refactor, part 3
  GUI: macro UI refactor, part 2
  Masochism Volatile Compiler
  GUI: is the macro UI back yet
  OPL: fix 4-op muting (I think)
  GUI: macro UI refactor, part 1 - PLEASE READ
  GUI: remove classic macro view
  Maybe just enforce for C++
  Forbid standard extensions
  .ftm loading progress (incomplete, not working)
  ...

# Conflicts:
#	src/engine/instrument.h
#	src/gui/insEdit.cpp

Transwave Checkpoint
2022-05-11 00:16:20 +09:00
cam900
4021abe495 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  YM2610: optimize oscilloscope fetch CPU usage
  GUI: add audio load meter to statistics
  GUI: put "OK" and "Cancel" buttons in the bottom
  better FM chip names
  sysDef refactor, part 3 - PLEASE READ
  NO
  Reduce unnecessary line
  Debug improvements
  AY8930: Fix VGM output.

# Conflicts:
#	.gitignore
#	src/engine/playback.cpp
#	src/gui/debugWindow.cpp
2022-05-04 03:32:26 +09:00
cam900
e136db6d7a Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (26 commits)
  prepare for #38
  NES: DPCM work!
  fix bug caused by new renderSamples approach
  NES: prepare for DPCM
  OPZ: more fixed frequency mode fixes
  OPZ: possibly fix fixed freq emulation
  OPZ: fix muting
  OPL: fix panning
  damn it
  per-channel oscilloscope, part 10
  NES: NSFPlay per-channel osc
  NES: NSFPlay muting
  NES: now fix tri_mute
  NES: finally
  fix typo in playback engine
  NES: wire up NSFplay
  now fix it damn it
  now move these files
  add readme
  convertir de Shift-JIS a UTF-8
  ...

# Conflicts:
#	src/engine/engine.cpp
#	src/engine/engine.h
#	src/engine/platform/nes.cpp
#	src/engine/vgmOps.cpp
#	src/gui/stats.cpp
2022-05-03 11:07:50 +09:00
cam900
e246697928 Prepare for per-channel osc view, ES550X core update 2022-05-01 21:26:10 +09:00
cam900
53a52788e2 Add per-note map reversed playback support
Prepare for pcm changed flag, 8 bit panning command
Reduce register spamming in volume update routine

Progress report:
* Emulation core update, Dispatch update:
  * Volume is unsigned like original chip, for reduce overflow.
* Add multi-mode macro support for radio button
2022-04-30 23:45:05 +09:00
cam900
72e8bb89a7 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  GUI: sample/macro zoom with ctrl-wheel
  GUI: prevent division by zero
  GUI: possibly fix an instrument saving issue
  GUI: add chip randomizer button
  update to-do list
  oops
  NES: add DMC write effect
  SoundUnit: implement panning
  QSound: implement panning macro - PLEASE READ
  further improve channel allocation
  update format.md for eventual ExtCh extra systems
  improvements to swap/stomp channel

# Conflicts:
#	src/gui/insEdit.cpp
2022-04-30 02:32:55 +09:00