-=RUS=- | Дата: Вторник, 06.05.2014, 23:17 | Сообщение # 1 |
 Генералиссимус
Группа: Администраторы
Сообщений: 352
Статус: Offline
| ───────────────────────────────────────────────────────────────
▓▓▓▓▓▓ ▓▓▓▓▓▓ ▓▓▓▓▓▓▓▓ ▓▓ ▓▓ ▓▓▓▓▓▓ ▓▓ ▓▓ ▓▓▓▓▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓▓ ▓▓ ▓▓ ▓▓▓▓▓▓ ▓▓▓▓▓ ▓▓ ▓▓ ▓▓ ▓▓▓▓▓▓ ▓▓▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓▓▓▓▓ ▓▓ ▓▓▓▓▓▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓▓▓▓▓▓▓
───────────────────────────────────────────────────────────────
Hackers club Podolsk city
Terra software Inc.
Вступление - ...Этот день мы приближали как могли... ------------------------------------------------------
Наконец-то, есть свободное время от водки, женщин и всяких приходящих мелочей жизни, и можно поговорить о вечном ... конеч- но о БК. Прошло всего каких-то 4 месяца, с тех пор как я попы- тался снова заняться программированием на БК и начать выпуск собственной газеты с названием "RETURN". Но ударившись в экспе- ременты с "железом", я позабросил все свои программные наработ- ки. И, вообще, жизнь сложная штука...
Так вышло что первый номер получился с весьма грубыми ошиб- ками, в смысле достоверности информации. Я хотел бы извинится перед СЕРГЕЕМ ПОЛЬСКИМ, за то что приписал его к фирме Strogino Programming Company (SPC), и "присвоил" SPC его игры CHRONOS, INSIDE OUTING, MAIMI COBRA и прекрасный отладчик DEDUG.
HARD - Чья ты теперь приставка Бортника? ------------------------------------------
Наконец-то благодаря моим титаническим усилиям есть полная схема приставки Бориса Бортника, с прошивкой ПЗУ и описанием принципа работы. На данный момент ведется разводка печатной пла- ты и поиск производителя. Кстати насчет прошивки: она есть только у меня и есть жела- ние ее изменить, так как она весьма убога. С софтом тоже глухо: есть только тест, который перегоняет содержимое ОЗУ приставки (512 Кбайт) в экран БК, и тоже привязан к прошивке ПЗУ.
HARD & SOFT - АЦП на БК? Дешево и сердито! --------------------------------------------
В предыдущем номере я писал, что мною разработан блок АЦП-ЦАП на основе COVOX и пары распространенных микросхем, кото- рый позволяет оцифровывать звуки с качеством намного превосходя- щим все существующие разработки на БК.
На моей БК11М ( 4 Мгц - не турбируется ... ) программно уда- лось достигнуть скорости оцифровки 6-8 кБт/сек, а если турбиро- вать, да еще загнать программу в доп. ОЗУ на РУ10, то скорость оцифровки можно довести до 10-16 кБт/сек. Можно решить проблему и аппаратно, но пока это не удалось. Можно писать информацию на винчестер (но его у меня нет), хотя я попробовал писать на дис- ковод, что в принципе логически одно и тоже. Существуют две вер- сии программы оцифровки, одна работает под любой DOS на БК11М, вторая - только в MKDOS с винчестером. К газете прилагается файл "ACP1". Схема приставки приведена в приложении 1.
SOFT - MAESTRO + ... ----------------------
MAESTRO + ... - это не МАЭСТРО с вечной жизнью - это новая жизнь МАЭСТРО. Г-н Леликов написал отличный музыкальный редактор и все бы хорошо, но он не позаботился, ни описать формат нотного текста, ни сделать руководство по написанию новых драйверов. А зря!
...AY
Теперь МАЕСТРО подвластен МП AY-3-8910. Конечно драйвер не использует все возможности МП это вам не ROCK MONITOR. Но все же 2 канала, 3-й для ударников. Но существующее положение можно и изменить. Если кто заинтересован могу поделится соображениями.
...COVOX
А вот это уже кое-что. Кто видел (точнее слышал) SST, тот поймет. Мною была предпринята попытка написать драйвер под COVOX для MAESTRO и на 90% она удалась. Но оказалось в МАЭСТРО некорректно сделана работа с каналами, что не вяжется с синтезом инструмен- тов. Драйвер работает только на БК11М и позволяет использовать блок инструментов длиной до 100000,причем каждый инструмент име- ет свою длину (не более 30000). Драйвер имеет 2 голоса, 3 й для ударных (как у SPC) и поддерживает 8 инструментов (8 каналов в МАЭСТРО). Драйвер позволяет производить выбор инструментов, наг- лядное определение длины инструмента, проверить звучание во всех 4 октавах и прочие навороты для полноценной работы.
...Описание формата нотного текста
Ниже приводится описание формата нотного текста редактора МАЭСТРО, записываемого по функции "ЗАПИСЬ ТЕКСТА", а также фор- мат упаковки нот для MAESTRO v1.5 . Все числа восьмеричные.
Нотный текст:
Смещение: 0 - признак нотного текста, всегда 104150
2 - темп мелодии 1-11
4 - количество голосов в драйвере, в котором последний раз редактировался текст
6 - имя драйвера в RADIX50
10 - длина блока параметров (равно 0 при его нет)
12 - начало блока параметров или нотного текста
Запись нот:
Каждый голос (канал) начинается с кода 177742. Если вместо ноты 0, то следующее число, если оно больше 401 является количеством повторений нулей минус 401. Ноты не упако- вываются. Репризы идут только в первом канале: 35-левая, 36-правая. Текст завершается словами 177742,0.
Формат упаковки ноты:
Одна нота занимает одно слово, что является самым компактным форматом хранения нотного текста.
Биты:
0-4 -- 0 нота отсутствует 1...34 номер ноты 35 левая реприза 36 правая реприза 37 пауза
5 -- тип ударника (0-первый, 1-второй)
6 -- бемоль ┐ Если 1, то знак присутствует. 7 -- диез ┘ Может быть только один из них или ни одного.
10-12 -- длительность ноты (1-6)
13-15 -- номер ударника (1-7), 0-отсутствует
16-17 -- наличие точки, увеличение длительности ноты в 1,5 раза до 3 х точек.
SOFT - 100% защита от кариеса -------------------------------
Каждый программист создававший что-то стоящее, хочет защи- тить свою программу от посягательств из вне. Год назад, а может 1,5 мной был придуман весьма эффективный метод борьбы с крекера- ми. Т.к. программа изрядно запылилась, то что-то может и не пой- ти, но все-таки рискнем. Перед запуском надо программу закодировать используя п/п CODER, затем запускаем с метки BEGIN.
Дальше разбирайтесь сами.
;-------------------------------------------------------------- ; TRAP PROTECTION (ЗАШИТА ПО ПРЕРЫВАНИЮ 14 ВЕКТОР) ;-------------------------------------------------------------- ; ; В закодированном блоке не должно быть команд ; циклов и переходов в начало закодированного участка. ; Для создания циклов можно использовать прерывания ; по векторам 20,30,34, т.к. они не трассируются. ; ; По 10 вектору лучше сделать сообщение для взломщиков, ; если при их неправильных действиях возникнет прерывание ; по резервной команде. ;--------------------------------------------------------------
BEGIN: MOV #40000,R0 1: COM (R0)+ TST R0 BPL 1
MOV #V14,@#14 ;задать вектор 14 BPT
ERCOM: NOP ;первая команда не шифруется, но ;удаляется. Прерывание произойдет ;после нее
M01: MOV #V20,@#20 M02: MOV #V34,@#34 M03: MOV #100112,@#30 M04: MOV #V10,@#10 M05: NOP ;здесь могла быть M06: NOP ;ваша реклама (ОЙ!) программа M07: IOT ;очистить экран M08: TRAP 0 ;инвертировать экран M09: MOV #NOTRAS,@#14 ;выход из закодир. BPT ;части HALT
V10: MOV #TXT,R1 CLR R2 EMT 20 JMP @#100300
TXT: .ASCIZ /НЕ ВЛЕЗАЙ!/ .EVEN
V20: MOV #40000,R0 1: CLR (R0)+ TST R0 BPL 1 RTI
V34: MOV #40000,R0 0: COM (R0)+ TST R0 BPL 0 RTI
TRAS: MOV R0,-(SP) MOV R2,-(SP) MOV 4(SP),R0 XOR R0,(R0) ;снятие защиты MOV AERCOM,R2 ; 1: CLR (R2)+ ;удаление предыдущей CMP R2,R0 ; команды BNE 1 MOV R0,AERCOM ;новый адрес MOV (SP)+,R2 MOV (SP)+,R0
V14: BIS #20,2(SP) MOV #TRAS,@#14 RTT
AERCOM: .WORD ERCOM ;адрес удаляемой команды
NOTRAS: MOV R0,-(SP) MOV AERCOM,R0 CLR (R0)+ ;удаление команды CLR (R0)+ ;MOV #NOTRAS,@#14 CLR (R0)+ ; MOV (SP)+,R0
BIC #20,2(SP) ;выход из закодированной RTT ; части
CODER: MOV #CA,R1 1: MOV (R1)+,R0 BEQ 2 XOR R0,(R0) ;одновременно защита от BR 1 ;перемещения и от просмотра 2: HALT ;со взломом
;таблица меток
CA: .WORD M01,M02,M03,M04,M05,M06,M07,M08,M09,0
.END
В следующем номере, если он будет: ------------------------------------
1. Новости о приставке Бортника. 2. Описание принципа написания драйверов для музыкального редактора МАЭСТРО. 3. Полный формат нотного текста редактора ROCK MONITOR. 4. Еще одна защитка.
Тимофеев Андрей 23-24.01 - 27.05 1996г.
Адрес для пожеланий и пожертвований:
142103 г.Подольск Александровский проезд д.15/41 кв.2
Приложение 1.
Схема АЦП.
D1 K155ИР17 ┌──┬──────┬──┐ │ │ │ │ А25 ←────────14─oER│ │ 4├──7──────────────────────→ А30 │ │ │ │ ┌──1─oE │ │12├─21──o───────────────────→ В24 │ │ │11├─20──┼─o─────────────────→ А24 В25 ←────────13─┤C │ │10├─19──┼─┼─o───────────────→ В23 │ │ │ 9├─18──┼─┼─┼─o─────────────→ В17 ┌─11─┤D │ │ 8├─17──┼─┼─┼─┼─o───────────→ В20 ЗЕМЛЯ │ │ │ │ 7├─16──┼─┼─┼─┼─┼─o─────────→ В22 А11 ←──────┼─12─┤GD│ │ 6├──9──┼─┼─┼─┼─┼─┼─o───────→ А23 +5В │ │ │ │ 5├──8──┼─┼─┼─┼─┼─┼─┼─o─────→ В31 А8 ←──────┼─24─┤+5│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ └──┴──────┴──┘ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ │ V V V V V V V V │ ┌─┴─┴─┴─┴─┴─┴─┴─┴─┐ │ │ 0 1 2 3 4 5 6 7 │ │ │ Разряды COVOXa │ │ │ │ │ │ Выход COVOXa │ │ └──┬──────────────┘ │ │ └───────────────────┐ ↓ │ V │ │ ┌─────────────────────┼────┘ │ D2 К521СА3 (*) │ D2 К554СА3 (*) │ ┌──┬──────┬──┐ │ ┌──┬──────┬──┐ │ │ │ │ │ │ │ │ │ │ └─3─o │ │ ├─7──┘ ─4─o │ │ ├──9─ │ │ │ ├─8────→ А8 │ │ │ ├─11─ U вх │ │ │ ├─1──┐ │ │ │ ├──2─ ←──────2─┤ │ │ ├─4──O ─3─┤ │ │ ├──6─ │ │ │ │ I │ │ │ │ ←───┐ └──┴──────┴──┘ └──┴──────┴──┘
(*) Разводка выводов для различных типов компараторов
(**) Конденсатор на выходе COVOXa не нужен!!!
|
|
| |