Для демки я бы считерил - последние точки закрасил бы принудительно.
Насчет перетасовки - разве для нее в данном случае не нужен буфер размером 256x256 элементов?
Еще попробовал 16 битный вариант (алгоритм blackmirrora, но реализация моя собственная, тормозная, не та, которую он привел в ЭТЮДах) - на несколько секунд быстрее. При этом сразу генерируются пары YX
- - - Добавлено - - -
Взял (в wiki) рекомендованные 97 и 33 (которые использовал Dart Alver) - с ними 16битный генератор еще на несколько секунд быстрее заполняет все дырки на экране, несмотря на некоторое замедление самой процедуры rnd.
- - - Добавлено - - -
Варианты с 16битным rnd - пиксельный и байтовый. Пиксельный заполняет все дырки за минуту 50 секунд (секунд на 20 быстрее предыдущего), байтовый - примерно за 10 секунд (вот это можно и в демке использовать).
Кстати, лучше реализовать алгоритм самостоятельно, вариант blackmirrorа (я про 8битный, 16битный не изучал) имхо не соответствует алгоритму.