Recent

Author Topic: FM synth algorithm display  (Read 994 times)

bobby100

  • Sr. Member
  • ****
  • Posts: 301
    • Malzilla
FM synth algorithm display
« on: August 10, 2025, 10:07:01 pm »
Anyone interested in TBCLeaLCDDisplay specialized in displaying FM (Yamaha DX) algorithms?

Fred vS

  • Hero Member
  • *****
  • Posts: 3819
    • StrumPract is the musicians best friend
Re: FM synth algorithm display
« Reply #1 on: August 10, 2025, 10:10:34 pm »
Anyone interested in TBCLeaLCDDisplay specialized in displaying FM (Yamaha DX) algorithms?

Yes, me, I adore the DX7!
I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

bobby100

  • Sr. Member
  • ****
  • Posts: 301
    • Malzilla
Re: FM synth algorithm display
« Reply #2 on: August 10, 2025, 10:28:31 pm »
Part of the graphics is in the component (custom font for the graphics) and part is in the test program. The component installs in the BGRA Controls palette.

Dunno if it is worth to commit to BGRA Controls, that is why I post it here.

bobby100

  • Sr. Member
  • ****
  • Posts: 301
    • Malzilla
Re: FM synth algorithm display
« Reply #3 on: August 10, 2025, 10:46:39 pm »
Next thing that I am fighting with, is the graphic for Envelope Generator.
DX7 isn't hard to calculate, but TX81z is a P.I.T.A.
Any experience with such things?

The upper graph on the screenshot is calculated according to DX7 parameters (levels and rates).
The bottom graph should be TX81z (and the rest of the 4-OP family), but I can't get the calculation right because TX81z's parameters are given in levels + ascending/descending angles.

Fred vS

  • Hero Member
  • *****
  • Posts: 3819
    • StrumPract is the musicians best friend
Re: FM synth algorithm display
« Reply #4 on: August 10, 2025, 10:55:09 pm »
Part of the graphics is in the component (custom font for the graphics) and part is in the test program. The component installs in the BGRA Controls palette.

Dunno if it is worth to commit to BGRA Controls, that is why I post it here.

Impressive!

(But I admit that I don't understand yet what the graphs show and how to use the program.  :-[ )
I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

bobby100

  • Sr. Member
  • ****
  • Posts: 301
    • Malzilla
Re: FM synth algorithm display
« Reply #5 on: August 10, 2025, 11:11:56 pm »
The matrix on the left is for the font/chars definitions, to create custom characters. It generates a string that can be used in TBCLeaAlgoDisplay.InitCharDefs (file bcleaalgodisplay.pas).
The second field is for creating the algorithm graphics by using the predefined font. If you take a look at the TBCLeaAlgoDisplay.InitCharDefs, you'll see how the graphic tiles are mapped to numbers/letters. You can generate a string that can be used in untalgos.pas to define a whole graphic (algorithm).
The file untalgos.pas in the test directory contains the ready-to-use algos, that you can preview with the sliders.

It is somehow like C64-style graphics - overwrite the font with graphic tiles, and use them to generate the whole picture.

Fred vS

  • Hero Member
  • *****
  • Posts: 3819
    • StrumPract is the musicians best friend
Re: FM synth algorithm display
« Reply #6 on: August 10, 2025, 11:24:38 pm »
The matrix on the left is for the font/chars definitions, to create custom characters. It generates a string that can be used in TBCLeaAlgoDisplay.InitCharDefs (file bcleaalgodisplay.pas).
The second field is for creating the algorithm graphics by using the predefined font. If you take a look at the TBCLeaAlgoDisplay.InitCharDefs, you'll see how the graphic tiles are mapped to numbers/letters. You can generate a string that can be used in untalgos.pas to define a whole graphic (algorithm).
The file untalgos.pas in the test directory contains the ready-to-use algos, that you can preview with the sliders.

It is somehow like C64-style graphics - overwrite the font with graphic tiles, and use them to generate the whole picture.

OK, thanks, I will study it deeply.
I use Lazarus 2.2.0 32/64 and FPC 3.2.2 32/64 on Debian 11 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt.

https://github.com/fredvs
https://gitlab.com/fredvs
https://codeberg.org/fredvs

 

TinyPortal © 2005-2018