На 64к было 4 страницы памяти по 16кб. Ничего менять нельзя было, все адреса постоянные. Первая страница 16кб — ПЗУ.
На скорпионе было 256кб, были подификации ZX с 128кб. На таких можно было для каждой страницы адресации 64кб выбрать какая страница памяти сейчас по этим адресам доступна. В каждый момент времени адресовалось только 4 страницы. Дальше — сиди переключай. Если с адреса 0 выбрал страницу ОЗУ, значит сможешь туда писать.
У «Спектрума» был 8-разрядный процессор Z80, работавший на частоте 4 МГц. Потом появился вариант турбо — 6 МГц. Оперативной памяти было 64 КБ. То есть все программы помещались в нее. Для работы самого «Спектрума» нужно было 12 КБ. Частично эта память использовалась под экран. Для программ оставалось 48-49 КБ. Сейчас драйвер какой-нибудь мышки занимает намного больше. Разрешение экрана было 256 точек по горизонтали, 192 — по вертикали. Если сейчас каждая точка имеет свой цвет и состоит фактически из трех, там они были в виде спрайтов. Спрайт — это кусочек экрана 8 на 8, кажется. И этому спрайту можно было один из 256 цветов прописать.
Видно, что человек, который это писал мало программировал под ZX Spectrum.
* Частоты были 3.5MHz и 7MHz.
* ОЗУ 48 КБ + ПЗУ 16 КБ было обычно. И вот 16 КБ — это типа прошивка и типа ОСь и 48 КБ под загружаемые программы и из этих же 48 КБ выделалась «видео» память
* Это не совсем спрайты, более популярен был термин «знакоместо». Действительно 8х8 пикселей. При этом никаких 256 цветов там не было и в помине, не считая разработанной позже программной техники TrueColor. На знакоместо выделялось 9 байтов. 8 байтов — это маска пикселей по строкам внутри знакоместа: 1 — основной цвет, 0 — цвет фона. 9-й байт определял цвет и свойства: по 3 бита на основной цвет и цвет фона (т.е. цвета выбирались из палитры 8 цветов), 1 бит — яркость (2 градации яркости), 1 бит — признак мигания. Таким образом, каждое знакоместо могло содержать только два цвета из одной из двух градаций яркости по 8 цветов и еще могло мигать.
1. рандом — говно
2. ограничение на длину в 3 символа — говно (хотя, понятно, что у вас рандом, поэтому так)
3. правильно писать свой sequence в postgres
4. ну, на крайний случай, можно сохранять в базу, получать id, а потом конвертировать его в key как-нибудь так:
import string
characters = string.digits + string.letters
base = len(characters)
def make_key(num):
rem, res = divmod(num, base);
return ('' if rem == 0 else make_key(rem)) + characters[res]
Никто ничего не открыл. Просто MS перестала брать деньги за диск в коробочке, а значит перестала его печатать, печатать инструкцию и оказывать поддержку по установке этого ПО на ваш компьютер.
Деньги, которые крутились вокруг этого продукта так и будут продолжать крутиться, а от несколько гигового бинарника, который можно бесплатно скачать им не убудет.
Исходный код никто не открывал и сообщество ничего не получило.
На скорпионе было 256кб, были подификации ZX с 128кб. На таких можно было для каждой страницы адресации 64кб выбрать какая страница памяти сейчас по этим адресам доступна. В каждый момент времени адресовалось только 4 страницы. Дальше — сиди переключай. Если с адреса 0 выбрал страницу ОЗУ, значит сможешь туда писать.
Видно, что человек, который это писал мало программировал под ZX Spectrum.
* Частоты были 3.5MHz и 7MHz.
* ОЗУ 48 КБ + ПЗУ 16 КБ было обычно. И вот 16 КБ — это типа прошивка и типа ОСь и 48 КБ под загружаемые программы и из этих же 48 КБ выделалась «видео» память
* Это не совсем спрайты, более популярен был термин «знакоместо». Действительно 8х8 пикселей. При этом никаких 256 цветов там не было и в помине, не считая разработанной позже программной техники TrueColor. На знакоместо выделялось 9 байтов. 8 байтов — это маска пикселей по строкам внутри знакоместа: 1 — основной цвет, 0 — цвет фона. 9-й байт определял цвет и свойства: по 3 бита на основной цвет и цвет фона (т.е. цвета выбирались из палитры 8 цветов), 1 бит — яркость (2 градации яркости), 1 бит — признак мигания. Таким образом, каждое знакоместо могло содержать только два цвета из одной из двух градаций яркости по 8 цветов и еще могло мигать.
кстати, есть же github.com/jacobian/django-shorturls
2. ограничение на длину в 3 символа — говно (хотя, понятно, что у вас рандом, поэтому так)
3. правильно писать свой sequence в postgres
4. ну, на крайний случай, можно сохранять в базу, получать id, а потом конвертировать его в key как-нибудь так:
import string
characters = string.digits + string.letters
base = len(characters)
def make_key(num):
rem, res = divmod(num, base);
return ('' if rem == 0 else make_key(rem)) + characters[res]
Деньги, которые крутились вокруг этого продукта так и будут продолжать крутиться, а от несколько гигового бинарника, который можно бесплатно скачать им не убудет.
Исходный код никто не открывал и сообщество ничего не получило.
2. Что тут вкусного?
3. Что тут нового?
Люди, конечно, не хомячки. А вот к кармодрочерам хабрахабра этот эпитет подходит лучше всего.
P.S.: Кстати, спасибо за карму!
Местные хомячки всё схавают.