Progmem Array umbenennen

Das in #17 sind keine Zeiger. Demnach scheint es nicht klar zu sein

Das von Combie hat schon gestimmt. Du musst es nur anpassen:

PROGMEM  const char sine_256[] = { .... };

const char* zeiger = sine_256;

Wo ist da das Problem? Zeiger des gleichen Typs deklarieren (mit dem Stern) und diesem die Array-Variable zuweisen. Genauso übergibt man Arrays an Funktionen

Nur weil ich sagte das Array-Variablen Zeigern auf das erste Element entsprechen heißt das nicht dass du einem Array ein anderes Array zuweisen kannst. Ein kleiner Unterschied besteht da schon

im uebrigen : Arduino IDE C ist nicht C++ , nein eher C??, weil bei vielen C++ funktionen der
ARDUINO IDE nur "!ERROR" als antwort kennt.

Das ist sicher C++. Was auf den AVR Prozessoren fehlt ist die STL und vielleicht noch andere grundlegende Bibliotheken. Sonst geht praktisch alles.

Den Unterschied zwischen C und C++ merkst du nicht bei Bibliotheken sondern an Sprachelementen wie Referenzen, Klassen und Templates