Вроде сделал стандартные ZX атрибуты (пока без мультиколора):
Слева вверху результат работы вот такой программки (плюс в диалоговом режиме разноцветных окружностей нарисовал):
PAPER как можно видеть тоже работает (тут из диалогового режима выполнил PAPER 6 и затем LIST)
Судьба эмулятора SPRINT - теперь он называется SprintEm и умеет эмулировать ZX Spectrum SE
Moderator: Shaos
-
Shaos
- Admin
- Posts: 24391
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Судьба эмулятора SPRINT - теперь он называется SprintEm и умеет эмулировать ZX Spectrum SE
You do not have the required permissions to view the files attached to this post.
-
Shaos
- Admin
- Posts: 24391
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Судьба эмулятора SPRINT - теперь он называется SprintEm и умеет эмулировать ZX Spectrum SE
Блин я чото сломал ночью и стандартный режим ZX перестал рисовать графику 
А всего то хотел прикрутить сборку через make sebasic
Так что пока репу не обновляю...
P.S. Я вот тут ещё думаю, а не поддержать ли бордер в реальном времени? Хотя бы построчно...
А всего то хотел прикрутить сборку через make sebasic
Так что пока репу не обновляю...
P.S. Я вот тут ещё думаю, а не поддержать ли бордер в реальном времени? Хотя бы построчно...
-
Shaos
- Admin
- Posts: 24391
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Судьба эмулятора SPRINT - теперь он называется SprintEm и умеет эмулировать ZX Spectrum SE
Фуф - вроде починил
Суть в том, что у меня даже при сборке с ключом BASICSE подкгружался autoexec=FN.EXE который ломал спектрумовое расположение страниц и страница 5 (которая всегда должна быть в адресах #4000...#7FFF и держит в себе стандартный видеобуфер) терялась - в результате при переключении режимов экран не восстанавливался из страницы 5 т.к. запись в стандартном режиме всегда велась в левую страницу, а страница 5 была пустой - убрал автозапуск в случае сборки с ключом BASICSE и всё снова заработало
Выкладываю: https://gitlab.com/nedopc/sprintem/-/commit/b4781f2963518d70476a06c47713c6b39a39fe9c
Суть в том, что у меня даже при сборке с ключом BASICSE подкгружался autoexec=FN.EXE который ломал спектрумовое расположение страниц и страница 5 (которая всегда должна быть в адресах #4000...#7FFF и держит в себе стандартный видеобуфер) терялась - в результате при переключении режимов экран не восстанавливался из страницы 5 т.к. запись в стандартном режиме всегда велась в левую страницу, а страница 5 была пустой - убрал автозапуск в случае сборки с ключом BASICSE и всё снова заработало
Выкладываю: https://gitlab.com/nedopc/sprintem/-/commit/b4781f2963518d70476a06c47713c6b39a39fe9c
-
Shaos
- Admin
- Posts: 24391
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Судьба эмулятора SPRINT - теперь он называется SprintEm и умеет эмулировать ZX Spectrum SE
Вот видосик запуска в режиме SE Basic IV 
You do not have the required permissions to view the files attached to this post.
-
Shaos
- Admin
- Posts: 24391
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Судьба эмулятора SPRINT - теперь он называется SprintEm и умеет эмулировать ZX Spectrum SE
Ещё надо поддержать сохранение и подгрузку файлов снапшотов SNA и можно подумать над поддержкой файлов TAPShaos wrote: 26 Oct 2025 12:46 P.S. Я вот тут ещё думаю, а не поддержать ли бордер в реальном времени? Хотя бы построчно...
Ну и плюс я ведь придумал расширение ULAplus, которое можно назвать ULA++ (чтобы не пересекаться с торговой маркой ULAplus, использование которой с некоторых пор требует лицензии) - его тоже можно в этом эмуле поддержать
-
Shaos
- Admin
- Posts: 24391
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Судьба эмулятора SPRINT - теперь он называется SprintEm и умеет эмулировать ZX Spectrum SE
Поддержал все 8 комбинаций цветов в режиме высокого разрешения:
https://gitlab.com/nedopc/sprintem/-/commit/968477ecd188e9407fd0b3d1aca3c6bc538b20a9
(если кто будет в код смотреть, то там номера цветов по EGA-шному указаны, не по ZX-овски, т.к. мне так удобнее, но всё выглядит как надо - сравнивал с Fuse)
Теперь надо с бордюром разбираться рисуя его построчно с привязкой к кадровому прерыванию...
Code: Select all
D0-2: Screen mode. 000=screen 0, 001=screen 1, 010= hi-colour, 110=hi-res
D3-5: Sets the screen colour in hi-res mode.
000 - Black on white. 100 - Green on magenta.
001 - Blue on yellow. 101 - Cyan on red.
010 - Red on cyan. 110 - Yellow on blue.
011 - Magenta on green. 111 - White on black.
D6: If set disables the generation of the timer interrupt.
D7: Selects which bank the horizontal MMU should use. 0=DOCK, 1=EX.
(если кто будет в код смотреть, то там номера цветов по EGA-шному указаны, не по ZX-овски, т.к. мне так удобнее, но всё выглядит как надо - сравнивал с Fuse)
Теперь надо с бордюром разбираться рисуя его построчно с привязкой к кадровому прерыванию...
You do not have the required permissions to view the files attached to this post.
-
Shaos
- Admin
- Posts: 24391
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Судьба эмулятора SPRINT - теперь он называется SprintEm и умеет эмулировать ZX Spectrum SE
Потихоньку прикручиваю бордюр (с запасом на свои расширения):
You do not have the required permissions to view the files attached to this post.
-
Shaos
- Admin
- Posts: 24391
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Судьба эмулятора SPRINT - теперь он называется SprintEm и умеет эмулировать ZX Spectrum SE
Добавил бордюр - пока статический, но работает в обоих режимах:
(в режиме высокого разрешения бордюр всегда имеет цвет фона, который всегда повышенной яркости)
https://gitlab.com/nedopc/sprintem/-/commit/5e52264c26371ff09d9738145ca162f0c4f94b5a
(в режиме высокого разрешения бордюр всегда имеет цвет фона, который всегда повышенной яркости)
https://gitlab.com/nedopc/sprintem/-/commit/5e52264c26371ff09d9738145ca162f0c4f94b5a
You do not have the required permissions to view the files attached to this post.
-
Shaos
- Admin
- Posts: 24391
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Судьба эмулятора SPRINT - теперь он называется SprintEm и умеет эмулировать ZX Spectrum SE
А теперь надо сделать динамический (построчный) бордер - причём в динамический режим оно будет переходить если переключение цвета бордера случилось чаще чем 2 раз за кадр (это значит программа пытается что-то рисовать на бордюре). Ну и в перспективе я хочу свои расширенные режимы ZX графики попробувать:
You do not have the required permissions to view the files attached to this post.
-
Shaos
- Admin
- Posts: 24391
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Судьба эмулятора SPRINT - теперь он называется SprintEm и умеет эмулировать ZX Spectrum SE
Ещё видосик тестирования эмуля - INK, PAPER, BORDER в разных режимах 
Вобщем всё работает как надо - BORDER игнорируется в MODE 1, однако значение запоминается и при выходе в MODE 0 бордюр становится нужного цвета. А вот INK и PAPER в MODE 1 меняют и бордюр (таймексовский режим высокого разрешения устанавливает цвет бордюра равным цвету фона и SE Basic IV этим пользуется).
Вобщем всё работает как надо - BORDER игнорируется в MODE 1, однако значение запоминается и при выходе в MODE 0 бордюр становится нужного цвета. А вот INK и PAPER в MODE 1 меняют и бордюр (таймексовский режим высокого разрешения устанавливает цвет бордюра равным цвету фона и SE Basic IV этим пользуется).
You do not have the required permissions to view the files attached to this post.
