nedoPC.org

Community of electronics hobbyists established in 2002

...
Atom Feed | View unanswered posts | View active topics It is currently 05 Apr 2020 14:44



Reply to topic  [ 80 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6  Next
6502 
Author Message
Banned
User avatar

Joined: 20 Mar 2005 14:41
Posts: 2149
Location: От туда
Reply with quote
Post 
А что там приводить то? Первое - это операции с ZP, когда задается только младший адрес, а старший всегда равен 0. Второе - это индексная адресация, когда младший адрес только в X или Y, старший же всегда равен 0. И вся соль в том, что помимо "короткого" (в плане длины опкода) обращения, байт из ZP можно использовать как второй операнд непосредственно (первый всегда [A], как у i8080). Отсюда и такое убеждение.

PS ZP - Zero Page.
PPS Чел на Эмураши разбирает кристал для низкоуровневой симуляции ядра 6502, который присутствует в процессоре NES в несколько усеченном виде. Фишка в том, что чел все объясняет открыто, а не тарит как у Visual6502.


23 Jun 2012 00:19
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Post 
HardWareMan wrote:
А что там приводить то? Первое - это...

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

На мой взгляд - это самый полезный способ разобраться с процессором
без лишних словесных пересказов.


PS. Немного не понял я затею мужика по ссылке. Зачем ему по-новой
делать реверс 6502? Ведь его схема на MOSFET-ах известна, да и на
логических вентилях - я видел...

_________________
iLavr


23 Jun 2012 03:16
Profile
Banned
User avatar

Joined: 20 Mar 2005 14:41
Posts: 2149
Location: От туда
Reply with quote
Post 
Lavr wrote:
Хардыч, ну в теории - это вроде как понятно, но я просил нехитрозадумчивый пример, чтобы поковыряться с ним в эмуляторе 6502 под отладчиком.

Нуу, я не писал под 6502 столько. Но думаю, если ты возьмешь ИДу, плагин для NES и любую игру для NES то все поймешь и так. Тем более, что простых игр уже дизасмы есть дофига (марио, танчики) и с комментами.
Lavr wrote:
PS. Немного не понял я затею мужика по ссылке. Зачем ему по-новой делать реверс 6502? Ведь его схема на MOSFET-ах известна, да и на логических вентилях - я видел...

Just for fun наверное.


23 Jun 2012 06:11
Profile
Retired
User avatar

Joined: 25 Jul 2011 01:14
Posts: 1334
Location: WWW
Reply with quote
Post 
Nerdy nights или как-то так.

три глобальных вещи есть у 6502

1) короткая адресация через нулевую страницу. каждая команда занимает 2 байта и выполняется быстрее. STA #xx/LDA #xx
2) по иксу
3) по игреку

второй и третий случай работает, как ссылка(?) на указатель(?) 2 байта плюс смещение. вот тебе внезапно 128 16битных регистров.

черт, а мнемоники то я подзабыл.


23 Jun 2012 07:50
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
6502 based projects

Это микро-презент для MC68k...

http://mycorner.no-ip.org/6502/index.html

http://mycorner.no-ip.org/68k/index.html

Там много всяких 6502- и др. вкусностей... :wink:

_________________
iLavr


21 Jul 2012 17:01
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Post 
А где бы посмотреть хотя бы программную модель Apple ][ ?

А то MC68k столько убеждал нас, что это чуть ли не прототип "Специалиста"...

А кроме исторического славословия, что-то мало полезного гуглится...
http://apple2history.org/history/ah03/
Меня интересует карта памяти и структура экрана...

У С64 экран, похоже что на БИС видеокотроллера организован - это не так интересно...

А вот как он устроен у Apple ][ ?

Так, судя по вот этой статье, Apple ][ был организован значительно сложнее,
нежели "Специалист".
Судя по тому, что в нижних 4К у Apple ][ мог быть текстовый "экран", похоже,
что также была заюзана БИС видеокотроллера...

В "Специалисте" так не поколбасишься - графический экран с прозрачным доступом.
В "Орионе" он хоть по памяти "запрыгал"...




PS.
Lavr wrote:
А ссылочка-то померла... :( http://www.6502asm.com/
Авторы выпустили новую версию эмулятора, и ссылка вновь рабочая! :kruto:

_________________
iLavr


18 Feb 2013 13:26
Profile
Retired
User avatar

Joined: 25 Jul 2011 01:14
Posts: 1334
Location: WWW
Reply with quote
Post 
невероятно толстый вброс. :o


18 Feb 2013 18:09
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Post 
MC68k wrote:
невероятно толстый вброс. :o

невероятно полезный и содержательный пост!
пешы таких больше! :lol:

_________________
iLavr


19 Feb 2013 02:10
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Post 
Lavr wrote:
Image

Quote:
Особенностью микроЭВМ УМПК-589, построенной на основе секционированных БИС МПК серии К589, является реализация на микропрограммном уровне системы команд микропроцессора К580ВМ80 и формирование внешних магистралей, совместимых с УМПК-80.
С.74.

Интересно, что в первых "Агатах" расширенный аналог 6502 также был выполнен
на этих самых "секционированных БИС" (как пишут).

Поэтому по системе команд он был расширен, а по скорости - проигрывал реальному 6502.

Я почему-то предполагал, что 6502 "на рассыпухе" делали с помощью БИС АЛУ и
мелкой логики, как это любители делают, оказалось, что нет...

_________________
iLavr


06 Mar 2013 03:52
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Post 
Странный несколько вопрос меня озадачил: у 6502 последние 6 байт (или 3 слова)
в старших адресах памяти - это три вектора прерывания по сути...

А как он поймёт эти 6 байт, если "наедет" на эти адреса, выполняя программу -
как коды операций?

_________________
iLavr


06 Mar 2013 10:42
Profile
Banned
User avatar

Joined: 20 Mar 2005 14:41
Posts: 2149
Location: От туда
Reply with quote
Post 
А почему нет? Это обычная память же. Исполняет же он программу в ZP и SP (ZeroPage & StackPage).


06 Mar 2013 13:15
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Post 
HardWareMan wrote:
А почему нет? Это обычная память же. Исполняет же он программу в ZP и SP (ZeroPage & StackPage).

Ну ZP и SP (ZeroPage & StackPage) - это никаких вопросов не вызывает...

Просто я не знаю его механизма - у i8080 по прерыванию должна поступить команда.
А 6502 - получается, просто берет адрес перехода из этих ячеек, вот я и задумался,
как он среагирует, если скушает JMP [ADDR NMI], к примеру.

_________________
iLavr


06 Mar 2013 13:46
Profile
Banned
User avatar

Joined: 20 Mar 2005 14:41
Posts: 2149
Location: От туда
Reply with quote
Post 
Ну, мы юзаем JMP ($FFFC) чтобы запустить игру в своем картридже, но эта команда логически не отличается от отработки ресета. А вот если подать JMP $FFFC, то он однозначно прыгнет в этот адрес. Ну а так как туда все равно нужно писать адрес обработки, то что-то полезное там хранить тяжело. Разве что подгадать адрес так, чтобы получилась полезная команда.


06 Mar 2013 20:44
Profile
Retired
User avatar

Joined: 25 Jul 2011 01:14
Posts: 1334
Location: WWW
Reply with quote
Post 
Lavr wrote:
А 6502 - получается, просто берет адрес перехода из этих ячеек, вот я и задумался,
как он среагирует, если скушает JMP [ADDR NMI], к примеру.

среагирует прикольно, ибо в конце обработчика прерываний обычо используют команду RTI.


07 Mar 2013 00:46
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Post 
А вот такой вопрос у меня возник по ходу моих разборок с 6502:
популярные компьютеры, построенные на 6502, имели ну хоть как-то стандартизированные
подпрограммы своих системных ПЗУ?

Ну типа, как был негласный стандарт в наших популярных поделках на i8080:
- ввод символа с клавиатуры с ожиданием;
- ввод символа с клавиатуры без ожидания;
- вывод символа на экран;
- вывод строки на экран.

Ну я имею в виду:
Code:
0F803H
...
0F809H
...
0F812H
...
0F818H
...
0F81BH
и т.д.

В книжке про ассемблер "Аппле" пара стандартных вызовов упоминается, но по имени,
а не по адресу функции...
(Морер У. Язык Ассемблера для персонального компьютера ЭПЛ: Пер. с англ. -М.: 1987, -430с.)

Или у них для компактности кода были только вызовы по внутренним адресам системной ПЗУ,
как у "Спецтрума"?

_________________
iLavr


07 Mar 2013 05:10
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 80 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6  Next

Who is online

Users browsing this forum: No registered users and 1 guest


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.