nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 28 Mar 2024 18:21



Reply to topic  [ 111 posts ]  Go to page Previous  1 ... 3, 4, 5, 6, 7, 8  Next
1816ВЕ48 
Author Message
Doomed
User avatar

Joined: 05 Nov 2007 05:08
Posts: 487
Location: Украина
Reply with quote
Lavr wrote:
В общем, в ряде случаев, где в оригинальном коде 580ВМ80 было:
Code:
   CPI 12
   JNC METKA

на всякий случай: это сравнение, что А<=12
Quote:
Code:
ADD A,(/12+1)
   JC  METKA

-- а это A<12

-12 = 0xF4

0xC - 0xC - нет переноса (заема)
0xC + 0xF4 - есть перенос


15 Dec 2021 02:53
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
shoorick wrote:
на всякий случай: это сравнение, что А<=12

Верно! На правила я тоже смотрел: :wink:
Quote:
; CPI A,X
; A = X; Z = 1, C = 0.
; A > X; Z = 0, C = 0.
; A < X; Z = 0, C = 1.

_________________
iLavr


15 Dec 2021 06:12
Profile
Doomed
User avatar

Joined: 05 Nov 2007 05:08
Posts: 487
Location: Украина
Reply with quote
я к тому, что такая замена вычитания на сложение не всегда эквивалентна
CPI - это вычитание


15 Dec 2021 06:18
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
shoorick wrote:
CPI - это вычитание

Вот в этом я как-то никогда не сомневался, что CPI - это вычитание без сохранения результата,
но с выставлением флагов... :wink:
А как по-твоему в АЛУ вычитание делается? :lol:

Кстати... автор модели 8048 уже и отладчик приделал:
http://www.nedopc.org/forum/viewtopic.php?p=163970#p163970
С ним бы было легче... Только я к этому моменту уже закончил... 8)

_________________
iLavr


15 Dec 2021 06:25
Profile
Doomed
User avatar

Joined: 05 Nov 2007 05:08
Posts: 487
Location: Украина
Reply with quote
Lavr wrote:
А как по-твоему в АЛУ вычитание делается? :lol:

Понятия не имею! 8)


15 Dec 2021 06:28
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
shoorick wrote:
Lavr wrote:
А как по-твоему в АЛУ вычитание делается? :lol:
Понятия не имею! 8)
Вот так:
Attachment:
img-rejsmq.png
img-rejsmq.png [ 2.06 KiB | Viewed 7874 times ]

_________________
iLavr


15 Dec 2021 06:53
Profile
Doomed
User avatar

Joined: 05 Nov 2007 05:08
Posts: 487
Location: Украина
Reply with quote
понял! ПС четыре раза :)


15 Dec 2021 07:09
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
shoorick wrote:
понял! ПС четыре раза :)

Гыгыгы... нет, ещё и Син и СО! Это очинь важно! :mrgreen:

_________________
iLavr


15 Dec 2021 07:44
Profile
Novelist

Joined: 11 Nov 2015 09:34
Posts: 25
Reply with quote
Решил поиграть, и увидел белиберду:

Attachment:
DD1.PNG
DD1.PNG [ 101.76 KiB | Viewed 7826 times ]


На двух компах такая белиберда. :econfused: От версии протеуса не зависит, пробовал на 6 7 8.
Изменил код, сначала гасятся сегменты, потом переключается знакоместо, потом запись в сегменты, и стало всё ок.
Attachment:
Digit1.zip [4.77 KiB]
Downloaded 190 times

В коде нашел ошибку, в обработчике прерывания аккумулятор сохраняется в r6 bank1 а восстанавливается из r6 bank0. Убрал команду sel rb0 (банк восстанавливается из регистра флагов по команде retr), после этого звуки стали лучше, пропали хрипы и низкочастотные жужжания, которые появлялись не в тему. Но играть скучно, враги медленно появляются. Если поставить clk 20mhz, то в самый раз, но анимация и звуки слишком быстрые. И третью кнопку бы приделать, чтоб оружие переключать в другую сторону, тогда скорость можно еще добавить наверное. :roll:


15 Dec 2021 15:45
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Pavtik wrote:
...играть скучно, враги медленно появляются. Если поставить clk 20mhz, то в самый раз, но анимация и звуки слишком быстрые. И третью кнопку бы приделать, чтоб оружие переключать в другую сторону, тогда скорость можно еще добавить наверное. :roll:

Если вы заметили, я приложил в архиве 2 варианта проекта, один из которых аж с четырьмя кнопками! :roll:

Image

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

Так что если вам играть скучно, я оставил все возможности сделать игру на свой вкус веселее!
Меня во многом сподвиг Tronix co своим HELO, я же также оставил всем возможность сделать что-то своё.
У вас там в запасе есть не только третья, но и четвёртая кнопка! :wink:

Как говорят англичане: Do please! :ebiggrin:


P.S. И я специально не трогал процедуру прерывания по таймеру, которую написал Tronix, - он её
видел на живых индикаторах, при этом не говорил ни про "белиберду", ни про дефекты индикации.

_________________
iLavr


15 Dec 2021 18:45
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Lavr wrote:
Lavr wrote:
Я тут озадачился на тему: а нет ли какой-либо простенькой игрушки на 1816ВЕ48 ? :roll:
Ну чтобы там 2 ... 4 кнопки управления и вывод на АЛС318 или, может быть, линейку светодиодов...
Ни для 1816ВЕ48, ни для 8048 я никаких подходящих игр не нашел... :(

Сразу таких игр и не найти... но всё-таки они есть! Совершенно мимоходом попалась мне
игра "Бейсбол" на 7-сегментных индикаторах! :roll:

 ВИДЕО "Бейсбол"

https://www.youtube.com/embed/gssTtSw22BA

В принципе, идея у этого "Бейсбола" та же, что и у стрелялки по пришельцам из этого топика...
И хотя процессор другой - 6502, и компьютер другой - KIM-1, но сама по себе идея такой игры
довольно-таки интересна! :kruto:

P.S. И вот еще одна игра на 7-сегментных индикаторах, но смысл её я не уловил... :-?
http://retro.hansotten.nl/hexpawn/

_________________
iLavr


13 Feb 2022 03:33
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Беседа про эмулятор B2M отрезана в новый топик

_________________
:dj: https://mastodon.social/@Shaos


17 Feb 2022 09:43
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Lavr wrote:
shoorick wrote:
ну, как-то ж записывать все равно нужно ;)
а, я забыл твой вариант записи напрямую с ЛПТ, как для Z80 - тоже вариант ;)
Да, я именно эту идею сейчас прорабатываю в несколько измененном виде под Proteus! :kruto:

В общем, выглядит эта идея с загрузкой через LPT примерно вот так, если я нигде не ошибся:

 СХЕМА 1816ВЕ48 с загрузкой через LPT
Attachment:
8048_SCH.PNG
8048_SCH.PNG [ 25.99 KiB | Viewed 5465 times ]

RC-цепи рассчитаны и проверены для серии К555. Для К155 придётся их подбирать по месту.


P.S. Я сразу и макетку купил под это дело, но теперь возникли сомнения: а уместится ли всё на ней? :roll:
 БЕСПАЕЧНАЯ МАКЕТНАЯ ПЛАТА WBU-204-3
Attachment:
WBU-204-3.jpg
WBU-204-3.jpg [ 20.39 KiB | Viewed 5464 times ]

_________________
iLavr


29 Aug 2022 23:21
Profile
Devil

Joined: 06 Oct 2006 03:17
Posts: 856
Location: г.Лянтор,Сургутского р-на,ХМАО
Reply with quote
Lavr, хочу обратиться к тебе как к знатоку ассемблера 8048, может ты под Специалистом МХ на нём писал? Решил в программе Asm1816.com компилировать небольшой пример от Шурика (http://shoorick.ho.ua/monsters/8049.html) и не смог ассемблировать мнемонику DB под Специалистом МХ (второй листинг). Что я делаю не так? Последнюю строку ассемблер не пропускает (забита точкой с запятой).
Code:
            DIS  TCNTI
            MOV  A,#$80
            OUTL P1,A
START    MOV  A,#9
LOOP     JNT1 DONE
            DEC  A
            JZ   START
            JMP  LOOP

DONE    ADD  A,#PATTERN-1
            MOVP A,@A
            OUTL P1,A
DEAD    JMP  DEAD

PATTERN     .DB $06 ;1
            .DB $5B ;2
            .DB $4F ;3
            .DB $66 ;4
            .DB $6D ;5
            .DB $7D ;6
            .DB $07 ;7
            .DB $7F ;8
            .DB $6F ;9

Code:
         ORG /0000H
         DIS TCNTI
         MOV A/80H
         OUTL P1,A
START:   MOV A/09H
LOOP:    JNT1 /DONE
         DEC A
         JZ /START
         JMP /LOOP
DONE:    ADD A/PATT-01H
         MOVP A,@A
         OUTL P1,A
DEAD:    JMP /DEAD
PATT:
;        DB 06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
         END


07 Mar 2023 09:18
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
fifan wrote:
Lavr, хочу обратиться к тебе как к знатоку ассемблера 8048, может ты под Специалистом МХ на нём писал?

Нет, под "Специалистом МХ" и на ассемблере К580ВМ80А я алгоритм игры разрабатывал,
потому что мне на нём думается, как на родном русском. :wink:

А вот знатоком ассемблера 8048 я себя никак назвать не могу, :( потому как код К580ВМ80А
я потом старательно переносил под 8048, и то вон Pavtik ошибок у меня нашел... :-?

Но в твоём случае, как мне кажется, я знаю, в чём дело.
Попробуй вот эту строчку:
Code:
        DB 06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
переписать вот так:
Code:
        DB 06H
        DB 5BH
        DB 4FH
        DB 66H
        DB 6DH
        DB 7DH
        DB 07H
        DB 7FH
        DB 6FH

Вроде как я на такие же грабли наступал... Извини заранее, если ошибаюсь. :oops:

_________________
iLavr


07 Mar 2023 16:23
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 111 posts ]  Go to page Previous  1 ... 3, 4, 5, 6, 7, 8  Next

Who is online

Users browsing this forum: No registered users and 10 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.