User Tag List

Страница 4 из 7 ПерваяПервая 1234567 ПоследняяПоследняя
Показано с 31 по 40 из 69

Тема: Создание исполняемых файлов, загрузчиков и прочей лабуды в SJASM

  1. #31

    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,829
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    663
    Поблагодарили
    513 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sayman Посмотреть сообщение
    2.1. на медленных компах ты будешь вечность ждать отправки кода/данных в ГС.

    засеки сколько длиться эта вечность

    - - - Добавлено - - -

    Цитата Сообщение от Sayman Посмотреть сообщение
    2.3. в озу ГСа не требуется отдельный загрузчик пользовательского кода, т.к. он там уже есть. в 2008м году я тоже по не знаю пилил всякое,
    свой загрузчик для подстраховки чтоб переставить стек в гарантированно безопасное место

    где у ГС по дефолту стек?
    или он не юзается в процессе загрузки кода?
    запрещены ли прерывания в процессе загрузки кода?
    запрещены ли прерывания в момент передачи управления загруженному коду?

    - - - Добавлено - - -

    Цитата Сообщение от Sayman Посмотреть сообщение
    2 двунаправленных порта, чё не так то?
    местами порты на чтение и порты на запись рассматривают как разные порты

    ТУТ ЖЕ они еще и читают\пишут в разные\ места
    ПОЭТОМУ ЭТО РАЗНЫЕ ПОРТЫ

    - - - Добавлено - - -

    Цитата Сообщение от Sayman Посмотреть сообщение
    2.2. на быстрых машинах с овер9000мгц+конвеера твои zxwait_чегототам пролетят со свистом, а гс не успеет отработать. если хочешь ввести задержку, то нужно выяснить длительность работы с точностью до миллисекунд и делать задержку в миллисекундах. и процедура ожидания должна подстраиваться под растактовку проца, чтобы на разных машинах таймер в ms не сбивался. ты даже этого не учёл.
    учел почитай тему...

    - - - Добавлено - - -

    Цитата Сообщение от Sayman Посмотреть сообщение
    это всё не просто *****код, это ГОВНОКОДИЩЕ!
    давай примеры твоего кода я тоже попридираюсь

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    а так это просто пример как загрузить свой код в GS (надеюсь и в NGS тоже)
    а не SUPERMEGABIGVERYULTRAFASTPROCEDURE
    - - - Добавлено - - -

    Цитата Сообщение от Sayman Посмотреть сообщение
    ты даже этого не учёл.
    ты тоже не учел что могут быть разные прошивки
    и нужен какой то более надежный вариант

    - - - Добавлено - - -

    Цитата Сообщение от Sayman Посмотреть сообщение
    если хочешь ввести задержку, то нужно выяснить длительность работы с точностью до миллисекунд и делать задержку в миллисекундах
    а еще ты не учел что у ГС 100500 вариантов частоты проца
    ТЫ ДАЖЕ НЕ ПОДУМАЛ ОБ ЭТОМ
    и как вычислить с какой частотой проца именно попавшийся ГС?

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

  3. #32

    Регистрация
    16.02.2006
    Адрес
    Новосибирск
    Сообщений
    3,280
    Спасибо Благодарностей отдано 
    17
    Спасибо Благодарностей получено 
    91
    Поблагодарили
    54 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    засеки сколько длиться эта вечность
    ну давай считать:
    djnz $ ;13t
    13*255*255 = 845325 тактов на каждый байт отправляемого кода или мода.
    если код имеет размер хотя бы в 2кб, тогда 2048*845325 = 1731225600 тактов, что соответствует примерно 8 секундам на каком-нить бедном Лениграде. и это без учёта пушей и попов (тогда уже не 8, а все 16 секунд).
    в случае же конвеерных машин, да ещё и с каким нить 1 тактом на команду твой код просто пролетает незаметно. а гс будет всё ещё выполнять прошлую команду и толку от твоей задержки не будет никакой.
    ТУТ ЖЕ они еще и читают\пишут в разные\ места
    ПОЭТОМУ ЭТО РАЗНЫЕ ПОРТЫ
    чувак, ты для начала определись, с какой стороны ты работаешь с портами. со стороны zx? физически тебе выдали 2 порта. отправил команду в порт команд - читай статус через этот же порт. то. что он внутри самой гс выглядит как то иначе, не создаёт никаким образом ещё один или 2 порта. их всего 2 для работы с ГС со стороны хоста.
    ты тоже не учел что могут быть разные прошивки
    последняя прошивка для гс была 1.05. более других не появлялось и не предвидится. когда до были 1.04, до неё 1.03. но все они в целом одинаковые и отличаются теми или иными багами.
    и нужен какой то более надежный вариант
    надёжнее, чем есть в пзу ГСа ты точно не напишешь. и сегодня уже никто писать не станет. если каждый начнёт писать под гс свои прошивки, начнётся бардак и девайс (и без этого мёртвый) станет ещё более мёртвым.
    а еще ты не учел что у ГС 100500 вариантов частоты проца
    на классической ГС был и остаётся стандартный z80. без конвееров, без сетей, без гигарецов частот и прочее подобное. отличаться может только базовая частота - от 12мгц до 20 (по последним данным). что в любом случае быстрее среднестатистического спектрума (включая эву с бейзконфой!).
    Последний раз редактировалось Sayman; 29.10.2020 в 19:34.
    0A заповедей:
    I. Не удаляй каталог свой.
    II. Не удаляй до времени ни одного файла.
    III. Не кради файлы.
    IV. Не желай программы ближнего своего.
    V. Почитай BDOS и BIOS как родителей своих ...
    ---
    Sprinter resurrect:
    Telegram
    Discord
    Repo
    Forum

  4. #33

    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,829
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    663
    Поблагодарили
    513 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sayman Посмотреть сообщение
    13*255*255 = 845325 тактов на каждый байт отправляемого кода или мода.
    ты че вихнулся?
    это паузы после ресета и перед запуском своего кода
    пока ГС гарантированно? не установит флаги в начальное положение


    ты хоть код осиль сначала
    а потом придирайся


    Код:
    gs_zxsd_send_loader_loop
    	ld a,(hl)	: out (gs_zxsd_data_reg_w),a	: call gs_zxsd_wait_db0
    	inc hl
    	dec bc
    	ld a,b
    	or c
    	jp nz,gs_zxsd_send_loader_loop
    Код:
    gs_zxsd_wait_db0			;ожидание data bit = 0
    	in a,(gs_zxsd_status_reg_r)
    	rla
    	jp c,gs_zxsd_wait_db0
    	ret
    тут по моему можно вообще делать in f,(c)

    не самый быстрый вариаант
    но зато компактно выглядит
    кому надо развернут и ускорят
    Последний раз редактировалось NEO SPECTRUMAN; 29.10.2020 в 19:42.

  5. #34

    Регистрация
    16.02.2006
    Адрес
    Новосибирск
    Сообщений
    3,280
    Спасибо Благодарностей отдано 
    17
    Спасибо Благодарностей получено 
    91
    Поблагодарили
    54 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    ты че вихнулся?
    845325 тактов ждать после ресета? ты чё вихнулся? я гс скорее выкину, чем сидеть слоупочить с ней.
    0A заповедей:
    I. Не удаляй каталог свой.
    II. Не удаляй до времени ни одного файла.
    III. Не кради файлы.
    IV. Не желай программы ближнего своего.
    V. Почитай BDOS и BIOS как родителей своих ...
    ---
    Sprinter resurrect:
    Telegram
    Discord
    Repo
    Forum

  6. #35

    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,829
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    663
    Поблагодарили
    513 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sayman Посмотреть сообщение
    ты чё вихнулся? я гс скорее выкину, чем сидеть слоупочить с ней
    ты ни с головой ни с математикой я вижу не дружишь
    845325 тактов это 11,793038504464285714285714285714 фреймов
    0,23586077008928571428571428571429 секунды карл
    точнее 0,24152142857142857142857142857143 тк у пентагона не 50 Гц
    ты дурак или прикидываешься?
    Последний раз редактировалось NEO SPECTRUMAN; 29.10.2020 в 19:48.

  7. #36

    Регистрация
    16.02.2006
    Адрес
    Новосибирск
    Сообщений
    3,280
    Спасибо Благодарностей отдано 
    17
    Спасибо Благодарностей получено 
    91
    Поблагодарили
    54 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Код:
    wc:	in a,(gscom)
    	rrca
    	jr c,wc
    	ret
    
    wd:	in a,(gscom)
    	rlca
    	jr c,wd
    	ret
    
    gs0:    call gs_reset
    	ld b,255     ;если за это время ГС не отвечает - она или зависла или её нет или ещё какие-то проблемы
    gs_ch1:	in a,(gscom)
    	rrca
    	dec b
    	jr z,none
    	jr c,gs_ch1
    	ret
    
    gs_reset:
    	ld a,0f4h
    	call sentcom
    	ret
    
    sentcom:
    	out (gscom),a
    	call wc
    	ret
    по факту это тоже *****код, т.к. циклы wc и wd могут стать вечными (как и у тебя). и делать нужно по примеру "gs0". как и в твоём коде.

    - - - Добавлено - - -

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    11,793038504464285714285714285714 фреймов
    причём тут фреймы, алло? ты считаешь прерываниями 50гц чтоли? поржаал))
    0A заповедей:
    I. Не удаляй каталог свой.
    II. Не удаляй до времени ни одного файла.
    III. Не кради файлы.
    IV. Не желай программы ближнего своего.
    V. Почитай BDOS и BIOS как родителей своих ...
    ---
    Sprinter resurrect:
    Telegram
    Discord
    Repo
    Forum

  8. #37

    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,829
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    663
    Поблагодарили
    513 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sayman Посмотреть сообщение
    причём тут фреймы, алло? ты считаешь прерываниями 50гц чтоли? поржаал))
    вообще не бобо с математикой
    тогда сколько по твоему секунд длиться 845325 тактов на 3.5МГц-ах?
    еще скажи что не 0,24152142857142857142857142857143

    ты хоть запусти в эмуляторе и посмотри что все задержки на пол секунды...
    а потом п***и

    а так до нужно наверно притулить проверку есть ли ГС вообще
    это будет правильным
    потом сделаю

    проверять каждый раз а не отвалился ли работающий ГС
    это уже долбоклюизм
    Последний раз редактировалось NEO SPECTRUMAN; 29.10.2020 в 19:56.

  9. #38

    Регистрация
    16.02.2006
    Адрес
    Новосибирск
    Сообщений
    3,280
    Спасибо Благодарностей отдано 
    17
    Спасибо Благодарностей получено 
    91
    Поблагодарили
    54 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    вообще не бобо с математикой
    только спектрумист подТРдосный будет вычислять абсолютные величины при помощи абстрактных 50гц (которые на каждой машине свои). особенно, когда прерывания запрещены)))
    рассчитывать нужно используя только тактовую проца, а это 3 500 000 герц (тактов) в секунду. математик ты наш.

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    проверять каждый раз а не отвалился ли работающий ГС
    вариантов отвала рабочей ГС большое множество. ну ладно, дело твоё. потом прибежит какой-нить юзер с сопливым ленином и припаянным мгтфом гс и расскажет тебе, как хорошо твой код находит полуотваленную гс))
    0A заповедей:
    I. Не удаляй каталог свой.
    II. Не удаляй до времени ни одного файла.
    III. Не кради файлы.
    IV. Не желай программы ближнего своего.
    V. Почитай BDOS и BIOS как родителей своих ...
    ---
    Sprinter resurrect:
    Telegram
    Discord
    Repo
    Forum

  10. #39

    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,829
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    663
    Поблагодарили
    513 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sayman Посмотреть сообщение
    только спектрумист подТРдосный будет вычислять абсолютные величины при помощи абстрактных 50гц (которые на каждой машине свои). особенно, когда прерывания запрещены)))
    рассчитывать нужно используя только тактовую проца, а это 3 500 000 герц (тактов) в секунду. математик ты наш.
    ДА ГЛАЗА РАЗЗУЙ ЭТО НИЖЕ НАПИСАНО
    в придачу 2 варианта

    мало того отклонение частоты интов +-1%
    не тупи

    - - - Добавлено - - -

    Цитата Сообщение от Sayman Посмотреть сообщение
    вариантов отвала рабочей ГС большое множество. ну ладно, дело твоё. потом прибежит какой-нить юзер с сопливым ленином и припаянным мгтфом гс и расскажет тебе, как хорошо твой код находит полуотваленную гс))
    рукалицо

    а может еще перед запуском тестировать 30 минут целостность памяти спектрума
    и не ложить код именно по тому адресу где битые биты?

    - - - Добавлено - - -

    ладно мне надоело читать твое трололо
    дальше можешь разговаривать сам с собой

    начальную проверка наличия ГС-ка как нибудь может потом притулю
    хотя это только будет занимать место
    тк смысл пытаться запускать программу для ГС на машине без ГС ?

  11. #40

    Регистрация
    16.02.2006
    Адрес
    Новосибирск
    Сообщений
    3,280
    Спасибо Благодарностей отдано 
    17
    Спасибо Благодарностей получено 
    91
    Поблагодарили
    54 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    рукалицо
    да да, именно, что рукалицо. я тебе там живой пример привёл, кстати. только вместо ленина была плата местного пятногона.
    а ещё у некоторых умельцев оно и на эжве умеет отвалиться/зависнуть.
    на форуме всё написано, только ленивый не найдёт.

    - - - Добавлено - - -

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    еще скажи что не 0,24152142857142857142857142857143
    вообще ниразу)))
    0A заповедей:
    I. Не удаляй каталог свой.
    II. Не удаляй до времени ни одного файла.
    III. Не кради файлы.
    IV. Не желай программы ближнего своего.
    V. Почитай BDOS и BIOS как родителей своих ...
    ---
    Sprinter resurrect:
    Telegram
    Discord
    Repo
    Forum

Страница 4 из 7 ПерваяПервая 1234567 ПоследняяПоследняя

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

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

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

Похожие темы

  1. Варианты загрузчиков
    от tnt23 в разделе Вектор
    Ответов: 114
    Последнее: 16.10.2024, 14:56
  2. Попиксельный raycasting и sjasm
    от Destr в разделе Программирование
    Ответов: 98
    Последнее: 22.01.2020, 23:31
  3. SJAsm + MultiEdit (красота и удобство)
    от bugsy в разделе Программирование
    Ответов: 132
    Последнее: 03.04.2016, 12:17
  4. МЕТКИ:sjasm+Unreal
    от breeze в разделе Программирование
    Ответов: 10
    Последнее: 06.07.2011, 08:39
  5. sjasm - первые глюки
    от breeze в разделе Программирование
    Ответов: 9
    Последнее: 24.03.2005, 10:51

Ваши права

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