GIF картинку как есть, так и показывать. Ибо там сжатие соседних кадров. Иначе ж памяти не напасёшься. Если всё же напасёшься, то вот тебе столбовой путь: https://en.wikipedia.org/wiki/X_BitMap
1) загрузить gif в gimp;
2) разные кадры (слои) экспортировать в отдельные *.xbm-файлы;
3) сами *.xbm файлы через #include включить в C-код;
4) вывод данных из массива, объявленного в .xbm-файле, осуществляется практически тупо копированием в дисплейную память, формат данных там: 8 горизонтальных пикселей на байт, строка расширяется до целого числа байт, хранение построчное, в байте левый пиксель -- нулевой бит. Ввиду последнего, возможно, при выводе придётся каждый байт развернуть: порядок битов 01234567 -> 76543210. Как-то
так или таблицей.