Здесь нет "переключалки" графический-текстовый режим! Тут только один режим 256х256!Zorko wrote: 28 Apr 2021, 20:52 3. Насколько я понял, здесь всегда графический режим, текстового нет?
Вопросы новичка по "Львову"
Re: Вопросы новичка по "Львову"
Last edited by als on 29 Apr 2021, 10:20, edited 1 time in total.
Re: Вопросы новичка по "Львову"
Ну рисковать выходить после программы в возможно уже некорректный бейсик, - думаю тоже не дело! Пользователи твой "продукт" просто не поймут!Zorko wrote: 29 Apr 2021, 09:13 Зациклить или HLT вообще не проблема. Но тогда всё равно же из этого состояния не выйдешь, иначе как по Reset? Так что оно почти эквивалентно перезагрузке.
Та и бейсик, уже не бейсик, а "битый"-бейсик.
МОНИТОРА В ПЗУ НЕТ! Получается, что - зачем нам монитор, если у нас есть васик!Zorko wrote: 29 Apr 2021, 09:13 А выход в Монитор не практикуется? Вроде для РК86 принято (точка F800). Что-то во Львове же есть такое, как Монитор?
Ой! Для меня это наверное все таки сложные вопросы!Zorko wrote: 29 Apr 2021, 09:13 1. Чем лучше всего сконвертить графику для использования впоследствии на Львове? Т.е. на входе BMP/PNG в 4 цветах, на выходе - побайтовый образ экрана Львова. Сопутствующий вопрос про графические ресурсы: в чём их лучше подготовить? Т.е. нужен конвертер и редактор для 4х-цветного режима графики. Или это всё вместе.
Явится Зеля ты просто повтори их, чтобы он увидел! Все, что мог по цветах та по цветовой гамме отписать, я тебе уже отписал выше! То "потолок" моих знаний по этой теме!
Тоже ничего не могу сказать, с PAINTом дело имел, только в детстве, когда "игрался" с васиком. Остальное время он меня как-то не интересовал!Zorko wrote: 29 Apr 2021, 09:13 2. Значит PAINT у нас дефективный? Тогда мне просто интересно как он вообще работает, ведь ему нужно много памяти. Самые лучшие реализации для Спектрума для заливки контура используют много памяти на стеке. Ну или буфер могут. Но не гарантируется, что он не разрастётся почти до размеров экрана.
Ага! Спасибо! Позже гляну!Zorko wrote: 29 Apr 2021, 09:13 Коммит я сделал, утилита и вчерашняя демка доступны в подсистеме K580Dev. Утилиту, кстати, написал тоже на Обероне.
Re: Вопросы новичка по "Львову"
Ну вот не поленился "пробежался" по декомпилированным исходникамZorko wrote: 29 Apr 2021, 01:24 Во. Хочу вот такую палитру: https://www.youtube.com/watch?v=fhxrxGLDKCU
Как-то же можно?
Rick(1).lvt и Rick(2).lvt з запросом "Out 0C1h"
И что я вижу
Code: Select all
Rick(1).lvt
Start:
Mvi A, 00Ch
Out 0C1h
Rick(2).lvt
Mvi A, 00Ch
Out 0C1h
................
................
................
Mvi A, 048h
Out 0C1hRe: Вопросы новичка по "Львову"
У Зели, есть такое как
Среда разработки "PC Lviv Studio" (Windows)
viewtopic.php?f=20&t=21&hilit=%D1%81%D1 ... 0%B8%D1%8F
Это его "детище"! Скорее всего он всё делает там! Ну по сути тот же ассемблер!
Я когда-то хотел "обвешать" его "детище", полезными макросами, нужными мне и другим процедурам и всё это выложить на радость себе и людям! Но на мою просьбу к Зеле предоставить ПОЛНУЮ документацию по возможностям "PC Lviv Studio", Зеля, скажем прямо "замялся"!
Re: Вопросы новичка по "Львову"
Игру типа 2048 вполне можно написать на Обероне.
Я вообще не очень по играм. Сильно много от меня не ждите. Портировать попробовать - могу.
Теперь я перед дилеммой: пихать ли дальше все процедуры в модуль Lvov или всё-таки завести и другие модули? Как их назвать? В ZXDev есть Basic. На Львове Басик как бы не при делах - машкодовая программа его основательно портит. Но вообще странно, что он не работает из ПЗУ, а перебрасывается в ОЗУ. Память тогда была слишком ценным ресурсом, чтобы вот так её разбазаривать.
То есть в остатке: выйти в Басик обратно нельзя, запустить его инициализацию (повторный холодный старт с копированием из ПЗУ опять в ОЗУ и запуск) тоже нельзя (или это и будет Reset?), Монитора в ПЗУ нет, и нам остаётся только HLT. Ну что ж, пусть будет HLT.
Я вообще не очень по играм. Сильно много от меня не ждите. Портировать попробовать - могу.
Понятно. Тогда наверно лучше сделать процедуру установки палитры через порт? А то не совсем понятно как бейсиковые PALETTE и GROUND раскладываются в значение, которое потом пишется в порт.als wrote: 29 Apr 2021, 09:56Похоже на то, что если на порт 0C1h подать 00Ch или же 048h то и будет тот цветовой режим! Вот правда какой именно то Rick первый или второй (а может и еще какие есть) я не знаю!
Теперь я перед дилеммой: пихать ли дальше все процедуры в модуль Lvov или всё-таки завести и другие модули? Как их назвать? В ZXDev есть Basic. На Львове Басик как бы не при делах - машкодовая программа его основательно портит. Но вообще странно, что он не работает из ПЗУ, а перебрасывается в ОЗУ. Память тогда была слишком ценным ресурсом, чтобы вот так её разбазаривать.
То есть в остатке: выйти в Басик обратно нельзя, запустить его инициализацию (повторный холодный старт с копированием из ПЗУ опять в ОЗУ и запуск) тоже нельзя (или это и будет Reset?), Монитора в ПЗУ нет, и нам остаётся только HLT. Ну что ж, пусть будет HLT.
Re: Вопросы новичка по "Львову"
Сразу скажу что создал тему
Оберон. Установка на Windows XP,"7" (32bit) среды разработки "XDev".
viewtopic.php?f=20&t=395
и как говориться, думаю не мешало бы автору принимать там участие, возможно, что-то написанное там комментировать и возможно поправлять (своими сообщениями в той теме), потому, что я могу много чего не знать или не понимать (не та понимать)!
Для меня эта тема совершенно новая!
И я узнал о ней только с приходом автора на форум!
(ответ на вопросы выше, отпишу немного позже)
Оберон. Установка на Windows XP,"7" (32bit) среды разработки "XDev".
viewtopic.php?f=20&t=395
и как говориться, думаю не мешало бы автору принимать там участие, возможно, что-то написанное там комментировать и возможно поправлять (своими сообщениями в той теме), потому, что я могу много чего не знать или не понимать (не та понимать)!
Для меня эта тема совершенно новая!
И я узнал о ней только с приходом автора на форум!
(ответ на вопросы выше, отпишу немного позже)
Re: Вопросы новичка по "Львову"
XDev и большинство подсистем могут работать и на Win2000. Без шуток. Но насчёт MinGW в WinDev не уверен. Версия для командной строки Ofront+ (включен в ядро XDev) - Оберон-транслятор в Си - протестирована на Windows 95.
У меня ещё вопрос: сколько на Львове ОЗУ? Были ли модели с разным количеством ОЗУ? Сколько у нас пользовательской памяти для наших машкодовых программ? (я полагаю, с адреса 0 и аж до ...? )
У меня ещё вопрос: сколько на Львове ОЗУ? Были ли модели с разным количеством ОЗУ? Сколько у нас пользовательской памяти для наших машкодовых программ? (я полагаю, с адреса 0 и аж до ...? )
Re: Вопросы новичка по "Львову"
Я думаю ты слишком, ускоряешь события!
Для начала, (видимо мне как пользователю), нужно будет создать какую-то тему и назвать подобно "Учимся программировать на Обероне", где будут всякие вырезки, пробы, черновики по ну и походу идеи о всяких портациях игр для Оберона!
Сам наверное понимаешь, что для людей это твоё, - новинка!
И не надо "шарашить" их по голове, - можна игрушку портировать!
Для начала новичкам (и мне тоже) нужно "ощупать", что это за среда такая и что в ней возможно вообще. И начинать я как и другие будут "привет мир", вывод спрайта на экран и т.д. И в моем понимании должна быть тема, где всякое такое "барахло" в виде КОРОТКИХ черновиков по "привет мир", вывод спрайта на экран и т.д. для того, чтобы пользователю-новичку было, что попробовать, как и мне было что рассмотреть, т.е. я про - FoxHunt.Mod для РК86, чтобы понять, что меня это заинтересует! Ну ведь для кого-то и это может оказаться изначально сложным!
Книги и разная документация по Оберону то все хорошо! Но все, как говориться для закрепления! Ну согласись, никто не будет перечитывать "тонну" книг и документации без всяких легких проб и экспериментов со средою. Ты наверное прекрасно знаешь, какие книги были раньше для того ж редактора "WORD" издательства "Диалектика" по моему. Так в тех книгах "Для чайников" было "попробуйте то... попробуйте это...", вот считаю по такому принципу нужно продвигать твою разработку, если же у автора, явно не иные цели!
Ты свою разработку ведь продвигаешь и на иные ретро машины кроме РК86 и Львов ?! - ну вот, - чем не пример черновики коротких кодом которые будут для ПК-01 ?! для меня же послужило хорошим толчком для того чтобы заинтересоваться твоей средой увидев FoxHunt.Mod для РК86. Хотя я, к РК86 не имею никакого отношения!
Та я то сильно этого и не жду!Zorko wrote: 29 Apr 2021, 10:35 Я вообще не очень по играм. Сильно много от меня не ждите. Портировать попробовать - могу.
Я жду, что мои возможные вопросы связанные с средой, автором не будут восприниматься как в обиду (или в злую критику какую-то), а так, что человек просто не знает! Просто не знает! Вот наверно это главное, что именно я жду!
К слову ты разъяснил все в теме "быстродействие эмуляторов", как говориться тихо и мирно что к чему, по поводу больших и маленьких FOR BEGIN и т.д. - Спасибо! Я все понял!
Думаю да! - сделать процедуру установки палитры через порт!Zorko wrote: 29 Apr 2021, 10:35 Понятно. Тогда наверно лучше сделать процедуру установки палитры через порт? А то не совсем понятно как бейсиковые PALETTE и GROUND раскладываются в значение, которое потом пишется в порт.
Ну давай я коротко скажу так:
Ты видел мою игру "Лабиринт 2014" ("Лабиринт 2018"), я любитель писать чего-то подобного. И что же мне для этого нужно -
1.Быстрый ввод спрайта на экран!
2.Быстрый опрос клавиатуры!
3.Вывод текста на экран (ПЗУ)
Ну а всякие там PAINT и прочее "ВАСИКовские прелести"
Слушай, ну я же твоими "глазами" не могу на это все посмотреть то...Zorko wrote: 29 Apr 2021, 10:35 Теперь я перед дилеммой: пихать ли дальше все процедуры в модуль Lvov или всё-таки завести и другие модули? Как их назвать? В ZXDev есть Basic. На Львове Басик как бы не при делах - машкодовая программа его основательно портит. Но вообще странно, что он не работает из ПЗУ, а перебрасывается в ОЗУ. Память тогда была слишком ценным ресурсом, чтобы вот так её разбазаривать.
ну подумай, как оно в других средах или в том же Паскале, Дельфи ну разложено ж как-то по модулям по грамотному, тот же SysUtils, Types и т.д.
Ну я не думаю, что ты будешь, та и тебе оно надо такое та и зачем,расматривать как и откуда в ПЗУ копируется ВАСИК и куда передается управление потом. Далее ту процедури тебе надо свою писать по копирования ВАСИКа так как в ПЗУ ты её отдельной CALL скорее всего не вызовешь! Она слижком "завязана" з другими процедурами выполняющее, что-то такое что тебе не нужно. Ну я не очень-то знаю эту всю "кухню" перегрузки, я тебе кидал документациюZorko wrote: 29 Apr 2021, 10:35 То есть в остатке: выйти в Басик обратно нельзя, запустить его инициализацию (повторный холодный старт с копированием из ПЗУ опять в ОЗУ и запуск) тоже нельзя (или это и будет Reset?), Монитора в ПЗУ нет, и нам остаётся только HLT. Ну что ж, пусть будет HLT.
Справочник ПЗУ-ПК-01 в HTML
viewtopic.php?f=8&t=376
в принципе можеш там "пошастать" как перегрузка ПЗУ работает. Я чего-то там когда-то тоже пытался рассматривать, даже какие-то черновые заметки делал в том HTML, ну увидишь там типа "используется при перегрузке", но я то уже все позабывал честно говоря. Те все мои "шастанья" были еще задолго до создания "Справочник ПЗУ-ПК-01 в HTML". То я просто перенес все туда! Даже не гарантирую точность того всего!
Re: Вопросы новичка по "Львову"
Слушай, ну это тебе нужно бы создать какую-то тему с описанием своей среды и т.д.Zorko wrote: 29 Apr 2021, 11:09 XDev и большинство подсистем могут работать и на Win2000. Без шуток. Но насчёт MinGW в WinDev не уверен. Версия для командной строки Ofront+ (включен в ядро XDev) - Оберон-транслятор в Си - протестирована на Windows 95.
Сам понимаешь, что каждый человек (как и я) почитает в описании, то что ему нужно!
Мне нужно было ВинХРю_32бит, кому-то может Win2000 Windows 95, все остальные термины типа MinGW в WinDev Ofront+ я вообще не понимаю про что речь, то другие понимают (видимо). У меня оно установлено и заработало. Далее я хочу это использовать, а не разбираться где оно еще идет, а где не идет! Во всяком случае сейчас у меня такой потребности нет!
Меня как-то не интересовали другий модели "Львова", ПК-02, ПК-03 вроде ПК-04 есть, у меня в реале была только ПК-01! Поэтому не хочу вводить тебя в заблуждение насчёт других моделей "Львов", что там да как! Явится Зеля "засыпь"Zorko wrote: 29 Apr 2021, 11:09 У меня ещё вопрос: сколько на Львове ОЗУ? Были ли модели с разным количеством ОЗУ?
Ну получается аж до ПЗУ т.е. до $C000!Zorko wrote: 29 Apr 2021, 11:09 Сколько у нас пользовательской памяти для наших машкодовых программ? (я полагаю, с адреса 0 и аж до ...? )
А если быть точнее $0000 - $BFFFF
вот только когда писать будешь, вызовы процедур, смотри внимательно документацию!
Там некоторые процедуры имеют несколько точек входа, т.е. способов вызова
Например,
2.6.2 Управляемый звуковой сигнал ( SOUND ).
Точка входа F81EH - DE94H ( 63518 - 56980 ).
Уж не знаю, те точки входа все ли в ПЗУ или может копируются и в ОЗУ.
И тогда если программа будет абсолютно на всю память то она "затрёт" те точки входа.
Ну и в в твоих модулях естественно должны быть точки входа которые в ПЗУ находятся.
Re: Вопросы новичка по "Львову"
Клавиатура.
Вот смотри момент по клавиатуре. В документации указано что есть основная и дополнительная клавиатура. Ну оно то правильно если будет единая процедура ReadKey
которая возвращает код нажатой клавиши. Но такая процедура скорее всего будет медленная из-за кода который обрабатывает и сводит к единому Кей-коду нажатую клавишу.
Но медленность это еще пол-беды. Бывает потребность в опросе клавиатуры на тему "не нажато/отжато ли НЕСКОЛЬКО КЛАВИШ одновременно", т.е. как правило, в игрушках это "по диагонали" (вверх-вправо или вверх-влево и т.д.).
такая потребность была и у меня в "лабиринт".
Я опубликую тебе "гибридный код" опроса клаватуры в "Лабиринт" но думаю, что ты сам всё поймешь.
И если такая возможность (опрос нескольких нажатых/отжатых клавиш) в Обероне будет отсутствовать, Оберон резко потеряет интерес (например для меня да и других пользователей тоже).
на выходе если флаги enKeyDown, enKeyleft, enKeyUP, enKeyRight не равен "0" то та клавиша нажата. Ну теоретически, и все одновременно могут быть нажаты!
Вот смотри момент по клавиатуре. В документации указано что есть основная и дополнительная клавиатура. Ну оно то правильно если будет единая процедура ReadKey
которая возвращает код нажатой клавиши. Но такая процедура скорее всего будет медленная из-за кода который обрабатывает и сводит к единому Кей-коду нажатую клавишу.
Но медленность это еще пол-беды. Бывает потребность в опросе клавиатуры на тему "не нажато/отжато ли НЕСКОЛЬКО КЛАВИШ одновременно", т.е. как правило, в игрушках это "по диагонали" (вверх-вправо или вверх-влево и т.д.).
такая потребность была и у меня в "лабиринт".
Я опубликую тебе "гибридный код" опроса клаватуры в "Лабиринт" но думаю, что ты сам всё поймешь.
И если такая возможность (опрос нескольких нажатых/отжатых клавиш) в Обероне будет отсутствовать, Оберон резко потеряет интерес (например для меня да и других пользователей тоже).
Code: Select all
Procedure KeyD; // Дополнительная клавиатура
Var A:Cardinal;
begin
enKeyDown:=0;enKeyleft:=0;enKeyUP:=0; enKeyRight:=0;// зануляем флаги нажатия вправо, влево и .д.
MviA($F7); Out_($D2); // отправляем на порт $D2 = $F7
In_($D2); cma; Ani($F0); // опрашиваем что вышло и обработка cma; Ani...
A:=GetRgA;
If A>=$80 then begin enKeyDown:=$80; A:=A-$80; end;
If A>=$40 then begin enKeyleft:=$40; A:=A-$40; end;
If A>=$20 then begin enKeyUP:=$20; A:=A-$20; end;
If A>=$10 then begin enKeyRight:=$10; A:=A-$10; end;
RET;
end;Re: Вопросы новичка по "Львову"
Zorko, ну от к примеру Я то теперь (УЖЕ) могу включать_догадки какие-то!Zorko wrote: 29 Apr 2021, 09:13 Коммит я сделал, утилита и вчерашняя демка доступны в подсистеме K580Dev. Утилиту, кстати, написал тоже на Обероне.
Но догадки, - догадками, а документация, - документацией!
Что с этим то всем делать когда скачал ?
Будут ведь и другие пользователи которые не знают!
Re: Вопросы новичка по "Львову"
Для РК86 же описано. Делать то же самое. Скачать XDevLite и K580Dev, установить z88dk. Ты про примеры сказал. Да, примеров надо. Мы их включим в поставку подсистемы, будут в качестве небольших примеров кода и демонстрацией возможностей подсистемы.
Ну хочешь давай твой документ приложим к среде. Ты там вроде собрался всё описать для XP и 7.
Ну хочешь давай твой документ приложим к среде. Ты там вроде собрался всё описать для XP и 7.
Re: Вопросы новичка по "Львову"
Ты наверно уже заметил, что процедуры в модули добавляются в подсистему совершенно произвольно, их можно добавить буквально сколько угодно и для этого не надо менять язык или среду разработки. Так что можно добавить всё, что напишешь в машкоде, любую подпрограмму обернуть для Оберона. Любой способ опроса клавиш.als wrote: 29 Apr 2021, 13:12И если такая возможность (опрос нескольких нажатых/отжатых клавиш) в Обероне будет отсутствовать
Асм-вставки делать тоже можно, но я это практикую неохотно, т.к. привык загребать мусор под коврик. Поэтому прикладной слой лучше всего иметь чистым, а машкод вынести на уровень библиотек. ReadKey можно сделать любой. Просто дай машкод, который будет его реализовывать. Можно иметь вообще большой и навороченный модуль опроса клавиш с кучей возможностей. Можно несколько модулей поменьше.
Re: Вопросы новичка по "Львову"
?!?!?!Zorko wrote: 29 Apr 2021, 15:39 Для РК86 же описано. Делать то же самое. Скачать XDevLite и K580Dev, установить z88dk.
Погодь.
Мы будто бы на разных языках разговариваем...
C:\XDev\
C:\z88dk\
я то все установил! еще вчера!
Далее скачал вот это https://github.com/Oleg-N-Cher/K580Dev с демонстрацией ПК-01 и что далее ?
Re: Вопросы новичка по "Львову"
Не, не, не...
я до этого еще далеко!
У меня ведь кроме увлечений и другое в жизни есть, как в принципе у каждого!
Who is online
Users browsing this forum: No registered users and 0 guests

