|
Spectrum 128k :: Forum
Программирование, операционные системы, документация, игры
|
 |
|
|
|
|
|
Subject: Z80-декодирование команд
|
|
|
|
Posted By:
eltaron
Posts: 8
Registered Since: Aug 04
View Profile...
|
|
Господа, никто не в курсе, как в z80 реализован сабж? Просто в далеком детстве я был уверен, что машинные коды для команд подбирались по рандому, а тут, после изучения архитектуры intel'ов, доперло.
Вот, к примеру, команда bit: сначала CB, потом идет байт. С помощью калькулятора получаем двоичное представление этого байта(пробелы для удобства)
bit 0,A 01 000 111
bit 1,A 01 001 111
bit 2,A 01 010 111
bit 3,A 01 100 111
bit 4,A 01 101 111
bit 5,A 01 110 111
bit 6,A 01 111 111
похоже, что 3,4,5 биты машкода - это первый операнд команды
вот bit x, B:
bit 0, B 01 000 000
bit 1, B 01 001 000
bit 2, B 01 010 000
bit 3, B 01 011 000
bit 4, B 01 100 000
bit 5, B 01 101 000
bit 6, B 01 110 000
bit 7, B 01 111 000
опять то же самое, плюс возникает догадка, что 0,1,2 биты отвечают за второй операнд
и так, имхо, для любой команды
я, наверное, наговорил и без того общеизвестных вещей, не знаю, но подскажите, плиз, где про это можно почитать? На zilog.com вроде бы ничего не нашел
Нужно мне это для эмулятора z80(а может, и спекки) на java для тормозного телефона siemens c55, стандартный подход авторов эмуляторов(256 if-ов, в некоторых из них еще вложенные) не подойдет, ибо скорости не те, а, главное, памяти очень мало. Если построить автомат, разбирающий команду сразу, то это даст чуть ли не O(1)
Если кто сталкивался - подскажите, пожалуйста
---------------------
Кворум-128 + 5.25 FDD Магик-05 + 5.25 FDD Кворум-48 (temporally(permanent?) r.i.p.)
|
|
|
|
|
Time of Post: Sep 06 2004 09:23
|
|
|
|
|
|
Subject:
|
|
|
|
Time of Post: Sep 06 2004 09:44
|
|
|
|
|
|
Subject:
|
|
|
|
Posted By:
Vovoi
Posts: 47
Registered Since: Aug 04
View Profile...
|
|
2eltaron: А можно сделать так, чтобы в этом "сименс", эмулятор спектрума руководил телефоном, записной книжкой, короче работал напрямую с железом?
Ведь это же круто, можно написать свой драйвер экрана и выводить СМС-ку не в четыре строки по 12 символов, а в два раза больше (как в Спекки 32, 42, 64 и 80 знаков) и свою навороченную тел.книжку, переназначить функции телефонных кнопок (например в нокии добивает кнопка "полож трубку" справа (хочется слева, прям под рукой:)
Уф столько можно было бы придумать!
Я уже с приятелем хотел сделать навороченную СМС. Суть в том, что мы созваниваемся (а компьютеры уже подготовлены). По моему сигналу, на компе он давит кнопку посыла "писка", а я к трубе микрофон подставляю. Программа делает LOAD, а у него ессно SAVE. В результате, за минуту отсылается громадное SMS, и по цене одинаково что сообщение, что разговор, а информации прошло больше.
Если бы можно было сделать такую фишу на эмуляторе в "Сименс" и во время разговора по нажатии определённой кнопки отсылать сигнал, то стандартная СМС сосала бы во всём мире.
:)))
/то есть, для этого не нужна будет навороченная мобила на 300 баков, поддерживающая похожие стандарты./
---------------------
Поддержка совместимости!
|
|
|
|
|
Time of Post: Sep 06 2004 10:41
|
|
|
|
|
|
Subject:
|
|
|
|
Posted By:
Eltaron
Posts: 8
Registered Since: Aug 04
View Profile...
|
|
Цитируя кого-то с forum.siemens-club.ru, свою операционку длля мобилы написать мы можем, но вот как потом заставить полученный девайс снова работать как телефон?
У меня это будет всего лишь мидлет, доступа к железу ему не получить
Да, а для отсылки огромных смс разве нужно так извращаться? А gprs на что? Самый просто способ - поставить на обеих трубах аську и писать через нее. У нас вот в городе мегабайт такого трафика стоит всего 18 центов
---------------------
Кворум-128 + 5.25 FDD Магик-05 + 5.25 FDD Кворум-48 (temporally(permanent?) r.i.p.)
|
|
|
|
|
Time of Post: Sep 06 2004 10:49
|
|
|
|
|
|
Subject:
|
|
|
|
Posted By:
Vovoi
Posts: 47
Registered Since: Aug 04
View Profile...
|
|
2Eltaron: и в самом деле "железный доступ" с точки зрения производителя это глупо, тогда компания разорится, поскольку не сможет совершенствовать модели, разве что в силе проца. Лучше постепенно придумывать фишечки, продавая по сути те же телефоны, а так люди получат в своё пользование микрокомпьютер и уже никого не будет интересовать, нужен ли диктофон в трубе или нет, ведь ОЗУ и другие ресурсы будут использоваться во всех направлениях.
Вот почему в старом форуме я говорил, что еслиб такая труба обзавелась процем Z80 и даже оперативкой 48К, (а лучшеб если внутрь целый Спектрум 128к с образами диска, закачиваемыми через дата-кабель), такие телефоны пользовались бы ошеломляющим успехом, несмотря на слабый CPU.
Даже если дать кодеру возможность посылать/принимать пакеты данных (разговор) и сканировать кейборд (из машиного кода, обрабатываемого процем мобилы), то все остальные телефоны - просто требуха.
Но ведь обычная труба должна содержать некоторое ПО, которое управляет звонками, не может быть, что там что-то не программное?! Скорее всего, очень сложно повторить существующими деталями ПЗУ-шку телефона, чтобы, например, залить туда систему.
:(
---------------------
Поддержка совместимости!
|
|
|
|
|
Time of Post: Sep 07 2004 02:33
|
|
|
|
|
|
Subject:
|
|
|
|
Posted By:
Eltaron
Posts: 8
Registered Since: Aug 04
View Profile...
|
|
Там все, абсолютно все управляется программно... Только за самый низкий уровень, GSM, отвечает отдельная микруха(да и та, кажется, программируемый микроконтроллер)
В моем телефоне по умолчанию стоит флэш-память на 8mb(нерасширяемая) и процессор Infenion C166, система команд которого хорошо документирована, частота у него в несколько раз больше, чем у спекового z80... Существуют ассемблеры, есть даже компилятор Си(и даже С++), залить во флэш другую прошивку тоже раз плюнуть
Достать бы исходники прошивки(она на си писана, судя по всему), можно было бы столько всего наворотить... Но не раскрывают, гады... Была бы прошивка, можно было бы даже из какого-нибудь C45 сделать конфетку... А то сейчас люди ковыряют дизассемблированное море кода(8 мег - это все же не 40 килобайт), а это совсем не то
---------------------
Кворум-128 + 5.25 FDD Магик-05 + 5.25 FDD Кворум-48 (temporally(permanent?) r.i.p.)
|
|
|
|
|
Time of Post: Sep 07 2004 05:55
|
|
|
|
|
|
|
|
|
|