Allegro est une librairie permettant de faire des jeux à la base mais celle ci a tellement évolué qu'au file de son développement les développeurs ont ajouté un panel de fonction permettant de créé toute sorte de widgets (boutons, checkbox, listbox, combobox...). Elle a été programmé en C pour la plupart des fonctions et en asm pour les parties critiques (c++ pour dx et co). Donc si tu es un vétérant de l'asm, tu dois savoir que tu n'auras aucun probleme pour appeler les différentes fonctions qui sont en C depuis ton listing asm. La documentation est fournie et détaillée, la librairie est portable et supporte de nombreux compilateurs.
Elle est disponible ici : http://www.talula.demon.co.uk/allegro/
En esperant que ca va t'aider