User Tag List

Страница 43 из 45 ПерваяПервая ... 39404142434445 ПоследняяПоследняя
Показано с 421 по 430 из 450

Тема: Исходные тексты ZASM 3.10

  1. #421

    Регистрация
    23.02.2005
    Адрес
    Донецк
    Сообщений
    486
    Спасибо Благодарностей отдано 
    29
    Спасибо Благодарностей получено 
    115
    Поблагодарили
    74 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию LOGO_14

    Снова собралось.
    Вложения Вложения
    • Тип файла: rar LOGO14.rar (154.9 Кб, Просмотров: 528)

  2. #421
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #422

    Регистрация
    23.02.2005
    Адрес
    Донецк
    Сообщений
    486
    Спасибо Благодарностей отдано 
    29
    Спасибо Благодарностей получено 
    115
    Поблагодарили
    74 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию LOGO15

    Вложения Вложения
    • Тип файла: rar LOGO15.rar (81.6 Кб, Просмотров: 28)

  4. #423

    Регистрация
    23.02.2005
    Адрес
    Донецк
    Сообщений
    486
    Спасибо Благодарностей отдано 
    29
    Спасибо Благодарностей получено 
    115
    Поблагодарили
    74 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию LOGO16






    Первые две в четвертом ряду - Бетельгейзе, ну за что купил как говориться.
    Вложения Вложения
    • Тип файла: rar LOGO16.rar (92.4 Кб, Просмотров: 33)

    Этот пользователь поблагодарил Rubts0FF за это полезное сообщение:

    LW(02.06.2025)

  5. #424

    Регистрация
    30.01.2006
    Сообщений
    1,921
    Спасибо Благодарностей отдано 
    73
    Спасибо Благодарностей получено 
    119
    Поблагодарили
    80 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Rubts0FF Посмотреть сообщение
    Для обращения с самой "железкой" использую следующие пп. Это не мои, и не помню где я их взял.
    у CMOS два варианта обращения к портам:

    1) Когда активно ПЗУ TRDOS или SYS или сигнал SHADOW:
    #DEF7 - регистр адреса RTC
    #BEF7 - регистр записи/чтения данных RTC

    2) Когда активен CMOSEN и НЕ активен SHADOW
    #DFF7 - регистр адреса RTC
    #BFF7 - регистр записи/чтения данных RTC

    CMOSEN - это старший бит D7 порта #EFF7
    SHADOW - это младший бит D0 порта #xxBF - включает shadow порты


    Секунды хранятся в RTC по 0 адресу, т.е. судя по всему у вас не устанавливается адрес для RTC при чтении. Что как-бы намекает на то, что порты заблокированы.
    Некоторые эмуляторы и упрощенные схемы могут читать/писать RTC по упрощенной схеме выборки портов, т.е. даже если доступ к порту заблокирован. На таком железе/эмуляторах часы могут затираться разными программами которые используют нестандартное обращение к портам.

    Проверьте, что записываете правильный адрес в правильный и активный порт.

    Т.к. вы используете адреса портов от второго варианта доступа, нужно убедиться, что SHADOW не активен и CMOSEN включен.

    Как вариант, можно попробовать писать адрес сразу в два варианта порта, тогда на одном из вариантов сработает. Но для чтения из корректного порта нужно знать состояние SHADOW или как-то детектить, какой из вариантов портов активен. Можно писать адрес в два порта, а читать из BFF7, расчитывая что он всегда доступен для чтения, но не везде это будет работать.

    Наиболее оптимальный вариант, как мне кажется для вашего кода - просто сбросить бит SHADOW.
    Последний раз редактировалось ZXMAK; 04.06.2025 в 18:01.
    ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
    ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet

  6. #425

    Регистрация
    23.02.2005
    Адрес
    Донецк
    Сообщений
    486
    Спасибо Благодарностей отдано 
    29
    Спасибо Благодарностей получено 
    115
    Поблагодарили
    74 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию ZX Turbo Assembler version 4.0F

    ZX Turbo Assembler version 4.0F

    В редакторе обнаружилась ошибка, она скорее неприятная, чем фатальная,
    при вставка числа из калькулятора в строку, строка ломалась, часть строки могла
    пропасть и .. чаша терпения переполнилась.
    Немного изменил set_art, setup со стрелочным интерфейсом от арт-студии, так, как пример.
    В архиве сам ZAsm v4.0F и исходные тексты оверлеев.
    Вложения Вложения

  7. #426

    Регистрация
    23.02.2005
    Адрес
    Донецк
    Сообщений
    486
    Спасибо Благодарностей отдано 
    29
    Спасибо Благодарностей получено 
    115
    Поблагодарили
    74 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию На собиралось.




    Что то все хостеры картинок .. в ауте, вот, что нашел.
    Вложения Вложения
    • Тип файла: rar LOGO17.rar (123.8 Кб, Просмотров: 16)

  8. #427

    Регистрация
    23.02.2005
    Адрес
    Донецк
    Сообщений
    486
    Спасибо Благодарностей отдано 
    29
    Спасибо Благодарностей получено 
    115
    Поблагодарили
    74 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию ZX Turbo Assembler v4.x64 RUS


    ZX Turbo Assembler v4.x64 RUS
    Предысторию этой версии я уже где то писал, а сейчас не так и важно. Это ZAsm с одним 4-х пиксельным шрифтом (64 символа в строке) и на русском языке. Версией пользуюсь уже недели .. три и в общем самому нравиться, хотя 4-х битный шрифт ... не любил я его ... Все оверлеи адаптировать не удалось, как оказалось это занимает много времени и гасит любой энтузиазм и пока я не потерял к этому интерес совсем, вот то что есть.



    Ладно, на сегодняшний день адаптированы следующие оверлеи:

    compile ovl - компилятор
    diskmov ovl - уплотнение диска
    setup ovl - настройка среды
    screen ovl - операции с экраном
    spack ovl - упаковка группы экранов
    sunp ovl - распаковка группы экранов
    service ovl - копирование/удаление файлов, рам-диск ...
    replace ovl - мультизамена по нескольким файлам
    edit ovl - операции с текстом

    Все вроде бы работает, в полной мере протестировать это -
    нет, этого не делал, чаше всего использовал diskmov что и
    понятно. В остальном разовые запуски для проверки ... к чему это
    все, возможны ошибки.

    Рабочий диск "D", что бы это изменить нужно любым диск-доктором открыть файл "Z4_x64", найти последовательность DD и заменить на AA. Ooops!
    Вложения Вложения
    • Тип файла: rar Z4_x64.rar (91.4 Кб, Просмотров: 16)
    Последний раз редактировалось Rubts0FF; 19.07.2025 в 14:43.

  9. #428

    Регистрация
    23.02.2005
    Адрес
    Донецк
    Сообщений
    486
    Спасибо Благодарностей отдано 
    29
    Спасибо Благодарностей получено 
    115
    Поблагодарили
    74 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Это скорее мысли в слух, чем крик о помощи. Где то месяц просидел в ZAsm v4.x64 RU, потом вернулся в так сказать основную, сейчас это v4.0F, кстати пришлось привыкать, после русской версии, одна из причин, захотел кое что из русской версии перенести в основную, и это часы, закладки, подменю "Сегодня" в смысле "Today", хотел что то еще сделать, но кончилось место в максимальном размере файла для ZAsm и это #A000. Более того, уже сейчас перебор в 41 байт, это приводит к
    порче 8-ми битного шрифта, несколько символов. По быстрому размер уменьшить не получилось. Сжатие - компрессия самого ZAsm-а - не вариант, так как распаковываться он будет в 48-ю память, да и загружаться, для сжатия туда же. Самый простой вариант - выкинуть подменю Today, перенести в Setup, но при старте хорошо когда сразу можно настроить дату и время, а не лазать по настройкам.
    Еще вариант, он не новый, у меня уже были переборы, сейчас не помню что и как тогда боролся, как вариант был сжатия блока шрифтов, их 4-ре штуки, вариант сделать шрифты подгружаемыми как это было в более ранних версиях, мне не показался удачным, не то что бы я все время переключаю эти шрифты/драйвера, но когда вдруг это надо - все происходит быстро.
    В испытании принимали участия LZASC точно не помню, что то там KSA, еще MS-PACK и File Compressor by Александр Труш. Кстати, не смотря на размер распаковщика, он больше чем у других (около 300 байт), сжатый файл у него оказался меньшего размера.

    А в общем шрифты сжались где то на треть. Здесь другой вопрос - распаковщики, у меня нет места, откуда они привыкли работать, для этих операций. В идеале, нужно что бы он не сходя с места, в смысле с какого бы адреса его не запустили, он взял и распаковал .. в то место в которое мне надо и я как то должен ему это указать. Потому что даже упакованные шрифты, это не отдельно взятый файл, это кусок в памяти, из одного цельного файла - ZAsm. Мысль вообще шрифты выкинуть из тела ZAsm и потом их просто загружать отдельно, хоть по одному, хоть блоком .., мне удачной не показалась.

    Сам процессом сжатия/компрессии я интересовался очень давно, книжку умную почитать давали, только до дела не дошло, потом книжку забрали и больше к этому не возвращался. А в моем случае поможет только вариант, взять один из упаковщиков дизассемблировать и пробовать использовать для своих целей. Не знаю только сколько это может занять времени.
    Есть идеи или решения - давайте, сюда или в телегу.

  10. #429

    Регистрация
    02.05.2015
    Адрес
    г. Таллин, Эстония
    Сообщений
    1,691
    Спасибо Благодарностей отдано 
    302
    Спасибо Благодарностей получено 
    223
    Поблагодарили
    159 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Rubts0FF Посмотреть сообщение
    А в общем шрифты сжались где то на треть. Здесь другой вопрос - распаковщики, у меня нет места, откуда они привыкли работать, для этих операций. В идеале, нужно что бы он не сходя с места, в смысле с какого бы адреса его не запустили, он взял и распаковал .. в то место в которое мне надо и я как то должен ему это указать.
    А если попробовать жать ZX0? Распаковщик 68 байт, если его таскать по памяти, то внутри есть четыре call, которые придётся поправить.
    Или ZX2 - жмёт хуже, но распаковщик 56 байт.

    Попробовал пожать 150 стандартных 768 шрифтов из коллекции Damien - 112 килобайт превратилось в 67 (паковал каждый файл отдельно).

    ; -----------------------------------------------------------------------------
    ; ZX0 decoder by Einar Saukas & Urusergi
    ; "Standard" version (68 bytes only)
    ; -----------------------------------------------------------------------------
    ; Parameters:
    ; HL: source address (compressed data)
    ; DE: destination address (decompressing)
    ; -----------------------------------------------------------------------------

    dzx0_standard:
    ld bc, $ffff ; preserve default offset 1
    push bc
    inc bc
    ld a, $80

    dzx0s_literals:
    call dzx0s_elias ; obtain length
    ldir ; copy literals
    add a, a ; copy from last offset or new offset?
    jr c, dzx0s_new_offset
    call dzx0s_elias ; obtain length

    dzx0s_copy:
    ex (sp), hl ; preserve source, restore offset
    push hl ; preserve offset
    add hl, de ; calculate destination - offset
    ldir ; copy from offset
    pop hl ; restore offset
    ex (sp), hl ; preserve offset, restore source
    add a, a ; copy from literals or new offset?
    jr nc, dzx0s_literals

    dzx0s_new_offset:
    pop bc ; discard last offset
    ld c, $fe ; prepare negative offset
    call dzx0s_elias_loop ; obtain offset MSB
    inc c
    ret z ; check end marker
    ld b, c
    ld c, (hl) ; obtain offset LSB
    inc hl
    rr b ; last offset bit becomes first length bit
    rr c
    push bc ; preserve new offset
    ld bc, 1 ; obtain length
    call nc, dzx0s_elias_backtrack
    inc bc
    jr dzx0s_copy

    dzx0s_elias:
    inc c ; interlaced Elias gamma coding

    dzx0s_elias_loop:
    add a, a
    jr nz, dzx0s_elias_skip
    ld a, (hl) ; load another group of 8 bits
    inc hl
    rla

    dzx0s_elias_skip:
    ret c

    dzx0s_elias_backtrack:
    add a, a
    rl c
    rl b
    jr dzx0s_elias_loop
    ; -----------------------------------------------------------------------------
    Последний раз редактировалось Bedazzle; 27.07.2025 в 10:38.
    Heavy on the disasm
    Eric and the disasm
    Mask 3: Venom strikes disasm
    Bard's disasm

  11. #430

    Регистрация
    23.02.2005
    Адрес
    Донецк
    Сообщений
    486
    Спасибо Благодарностей отдано 
    29
    Спасибо Благодарностей получено 
    115
    Поблагодарили
    74 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Bedazzle Посмотреть сообщение
    А если попробовать жать ZX0
    У меня такой программы нет, так же подозреваю что и на ZX SPECTUM такой программы нет. Не то что бы я против использования внешнего так сказать софта, но это усложняет жизнь.

Страница 43 из 45 ПерваяПервая ... 39404142434445 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •