Size: a a a

Ассемблер

2020 December 09

RF

Robus F. in Ассемблер
Saenro T
Прозвучало так, будто не актуально?
Просто я не пишу под Adlib. Я пишу на тех треккерах, которые могу использовать в реальности. Когда-то я хотел выбрать путь SID музыки, но понял что на РС это тупиковая ветка. В итоге прижились только MID и цифра. Adlib это интересно, но нельзя использовать в реальности, разве что эмулируя.
источник

RF

Robus F. in Ассемблер
А вообще под SID было написано кучу офигенных треков.
источник

ST

Saenro T in Ассемблер
Ну, да. Просто код (плеер) с неплохой мелодией... Не соврать бы... Около 600 байт встречаются.
источник

ST

Saenro T in Ассемблер
Соврал уже
источник

ST

Saenro T in Ассемблер
Видел около 300 байт мелодия+плеер
источник

ST

Saenro T in Ассемблер
В то время как оригинальный плеер около 400 байт
источник

ST

Saenro T in Ассемблер
С цифрой не хочется связываться
источник

RF

Robus F. in Ассемблер
Так ... Ну это уже загиб 300 байт с музыкой ... Там в треке 9 каналов, это мелодия из пустоты что ли? Там вон в примерах у самого треккера простенькие мелодии по 3-4кбайт занимают.
источник

ST

Saenro T in Ассемблер
Да там 4 инструмента и всего до 64 тактов вроде, причем некоторые инструменты играют свои 4 такта по кругу, другие то играют то не играют. В общем там плеер хитрый, заточенный под саму мелодию.
источник

ST

Saenro T in Ассемблер
Robus F.
Так ... Ну это уже загиб 300 байт с музыкой ... Там в треке 9 каналов, это мелодия из пустоты что ли? Там вон в примерах у самого треккера простенькие мелодии по 3-4кбайт занимают.
При свете дня комп включу, гляну. Просто навскидку помню что всё это помещалось на одной странице в HIEWe, а он вроде до 400 байт отображает.
источник

D

Den in Ассемблер
Saenro T
mov eax, 789ABCDEh
mov edi, stringout+8
mov ebx, symbols
std
again: push eax
and eax, 0Fh
xlat
stosb
pop eax
shr eax, 4
jne again
ret
symbols: db '0123456789ABCDEF'
stringout: dq 0,0


Как-то так наверное?
Не проверял.
Ну вот допилил наконец, все работает как надо, спасибо за алгоритм, очень интересный он, много там всяких ньюансов кроется, хотя на первый взгляд просто.  Вот следущую программу уже хочу сделать осмысленную, упаковщик файла чтобы с файлом поработать!  Что-то типа такого, читаем файл, находим 15 нулей подряд записываем 0*15 и так дальше, и потом наверное распаковщик :))
источник

ST

Saenro T in Ассемблер
Robus F.
Так ... Ну это уже загиб 300 байт с музыкой ... Там в треке 9 каналов, это мелодия из пустоты что ли? Там вон в примерах у самого треккера простенькие мелодии по 3-4кбайт занимают.
На самом деле:
224 байт код плеера;
346 байт данные + мелодия на
16 тактов (4 канала).
источник

RR

Ruslan Ruslan in Ассемблер
Написать программу, находящую максимальный и минимальный символы в исходной строке
Ребят может быть у кого нить полный код есть
источник

ST

Saenro T in Ассемблер
Минимальный - пробел?
Максимальный - z?
источник

ST

Saenro T in Ассемблер
Или от 0 до 255?
источник

RR

Ruslan Ruslan in Ассемблер
От 0 до 255
источник

ST

Saenro T in Ассемблер
Какая платформа?
источник

ST

Saenro T in Ассемблер
Den
Ну вот допилил наконец, все работает как надо, спасибо за алгоритм, очень интересный он, много там всяких ньюансов кроется, хотя на первый взгляд просто.  Вот следущую программу уже хочу сделать осмысленную, упаковщик файла чтобы с файлом поработать!  Что-то типа такого, читаем файл, находим 15 нулей подряд записываем 0*15 и так дальше, и потом наверное распаковщик :))
Погугли формат графического файла PCX, там как раз простенький алгоритм, можно оттуда стащить что-нибудь.
источник

ST

Saenro T in Ассемблер
Как бы "Распаковка")
mov si, in
mov di, out
_start: mov cx, 1
lodsb
cmp al, 0C0h
jb _out
and al, 3Fh
mov cl, al
lodsb
_out: rep stosb
cmp di, length
jb _start
источник

ST

Saenro T in Ассемблер
Осталось слегка переделать под свои нужды: cmp/and
источник