Chaque pixel nécessitera 18 bits X 3 (pour R, G et B) = 54 bits
Votre estimation est incorrecte. La valeur "18 bits" est par pixel , pas par couleur. Les canaux rouge, vert et bleu ont chacun une profondeur de bits maximale de 6 bits (64 valeurs différentes), 18 bits au total.
Ce contrôleur d'affichage prend également en charge un mode 16 bits (où les données de pixels n'ont que 5 bits pour le rouge, 6 pour le vert et 5 pour le bleu), ce qui facilite le regroupement de chaque pixel en seulement deux octets. Cela facilite le stockage efficace des bitmaps et augmente la quantité de pixels que vous pouvez écrire sur l'affichage par seconde.
Nombre de pixels dans une image = 65,36 x 65,36 = 4272 pixels
Vous ne pouvez pratiquement pas stocker de pixels fractionnaires , donc vos bitmaps réels (images / sprites / caractères / autres) seraient probablement 65 2 = 4225 pixels.
Dans la voie la plus simple (format 16 bits R5G6B5 pixels), 4225 * 16 bits équivaudraient à 67600 bits par bitmap, ou 8450 octets par bitmap. 50 images nécessiteraient 423 ko (sans compression).
Si vous voulez vraiment la profondeur de couleur complète, vous avez besoin de plus de 2 octets par pixel. À ce stade, vous pourriez tout aussi bien consacrer un octet à chaque couleur (comme le suggère WhatRoughBeast), ce qui augmentera encore les besoins de stockage de 3/2 (634 ko pour 50 bitmaps de 65 x 65).
Vous pouvez également compresser les pixels de 18 bits les uns à côté des autres dans la mémoire (bits de sous-pixels non alignés avec les limites d'octets), sans gaspiller aucun bit. Vous n'auriez besoin que de 476 ko pour les bitmaps 50 65x65 18 bits, mais ce serait difficile à programmer et plus lent à traiter.