6502
Moderator: Lavr
-
- Retired
- Posts: 1328
- Joined: 25 Jul 2011 00:14
- Location: WWW
-
- Supreme God
- Posts: 16676
- Joined: 21 Oct 2009 08:08
- Location: Россия
Ну, поскольку нерды за столько лет, я надеюсь, всё уже нашли...MC68k wrote:массам было плевать, что там внутри, нерды находили нужное сами.
И поскольку, в отличие от масс, мне не плевать, то как реально-то дело обстоит?
Где можно что-то конкретное выяснить?
Если уж в книжке про ассемблер "Аппле" стандартные процедуры ввода с клавиатуры
и вывода на экран упоминаются, вероятно, это всё-таки имело место быть?
iLavr
-
- Retired
- Posts: 1328
- Joined: 25 Jul 2011 00:14
- Location: WWW
в аппле процедура ввода с клавиатуры равна одной команде
Code: Select all
LDA $C000
-
- Supreme God
- Posts: 16676
- Joined: 21 Oct 2009 08:08
- Location: Россия
Я знаю...MC68k wrote:в аппле процедура ввода с клавиатуры равна одной командеCode: Select all
LDA $C000
Но я задал совершенно другой вопрос: популярные ПК построенные на 6502,
имели ну хоть как-то стандартизированные подпрограммы своих системных ПЗУ?
Ну типа, как был негласный стандарт в наших популярных поделках на i8080:
Code: Select all
0F803H
...
0F809H
...
0F812H
...
0F818H
...
0F81BH
и т.д.
iLavr
-
- Supreme God
- Posts: 16676
- Joined: 21 Oct 2009 08:08
- Location: Россия
-
- Supreme God
- Posts: 16676
- Joined: 21 Oct 2009 08:08
- Location: Россия
Действительно, у 6502-совместимых ПК подпрограммы имели имена (видимо потому,Lavr wrote:В книжке про ассемблер "Аппле" пара стандартных вызовов упоминается, но по имени,
а не по адресу функции...
что адреса разные).
Нашел вот некую таблицу от С.ФРОЛОВа
Code: Select all
АДРЕСА ПОДПРОГРАММ МОНИТОРОВ НАИБОЛЕЕ РАСПРОСТРАНЕННЫХ СИСТЕМ
------------------------------------------------------------
! ! АГАТ !BAS-60!BAS-67!СЕТЕВ.!APPLE !РАПИРА!T.KIT !
!---------+------+------+------+------+------+------+------!
!BASCALC ! FB7D ! FB8E ! FB26 ! FB2D ! FBC1 ! 1AF4 ! D969 !
!BELL ! FCA5 ! FCB4 ! FF3D ! FF3D ! FF3A ! 19A4 ! D89B !
!BS ! FC23 ! FC1F ! FC21 ! FC21 ! FC10 ! 1915 ! D81F !
!CLEOLZ ! FC07 ! FC0E ! FCA7 ! FCA7 ! FC9E ! 198F ! D88A !
!CLEOP1 ! FC49 ! FC4B ! FC4F ! FC4F ! FC46 ! 1952 ! D85C !
!CLEOP ! FC45 ! FC47 ! FC4B ! FC4B ! FC42 ! 194E ! D858 !
!CLREOL ! FC05 ! FC0C ! FCA5 ! FCA5 ! FC9C ! 198D ! D288 !
!COUT ! FDD4 ! FDDC ! FDE0 ! FDE1 ! FDED ! 18C6 ! D7E0 !
!COUT1 ! FDD7 ! FDDF ! FDE3 ! FDE4 ! FDF0 ! 18C9 ! D7E3 !
!CR ! FC5B ! FC67 ! FC6B ! FC6B ! FCB2 ! 1964 ! D86F !
!CROUT ! FD75 ! FD8E ! FD92 ! FD92 ! FD8E ! 18C4 ! D7DE !
!CROUT1 ! FD45 ! FD89 ! ! ! FC48 ! 18C1 ! D7DB !
!GETLN ! FD55 ! FD6E ! FD72 ! FD72 ! FD6A ! 1877 ! D4CB !
!GETLNZ ! FD4F ! FD6B ! FD6F ! FD6F ! FD67 ! 1874 ! D4C8 !
!HOME ! FC3B ! FC3D ! FC41 ! FC41 ! FC58 ! 1946 ! D850 !
!INIT ! FB3C ! FBED ! FBEF ! FBEF ! FB2F ! 1AAE ! D93F !
!KEYIN ! FD07 ! FD0D ! FD11 ! FD11 ! FD1B ! 1813 ! D504 !
!LF ! FC5F ! FC6B ! FC6F ! FC6F ! FC66 ! 1980 ! D87C !
!PRBYTE ! FDC1 ! FDC9 ! FDCD ! FDCE ! FDDA ! 18EC ! D953 !
!PRHEX ! FDDA ! FDD2 ! FDD6 ! FDD7 ! FDE3 ! 18F5 ! D95C !
!RDCHAR ! FB66 ! FB7A ! FB80 ! FB74 ! FD35 ! 1ADD ! D549 !
!RDKEY ! FD04 ! FD0A ! FD0E ! FCCB ! FD18 ! 1810 ! D501 !
!RDKEY1 ! ! ! ! ! ! 180C ! !
!REASS ! FE60 ! FE5E ! FE5E ! FE63 ! FE5E ! НЕТ ! E1D6 !
!RESET ! FA48 ! FA48 ! FA4C ! FA51 ! FA62 ! 1806 ! 0384 !
!SCROLL ! FC69 ! FC75 ! FC79 ! FC79 ! FC70 ! 19FA ! D8D9 !
!SETFLASH ! ! ! ! ! ! 19C3 ! !
!SETINV ! FE77 ! FE75 ! FE75 ! FE7A ! FE80 ! 19F7 ! D8AF !
!SETNORM ! FE7B ! FE79 ! FE79 ! FE7E ! FE84 ! 19BD ! D8B4 !
!SETTXT ! FB2E ! F846 ! F846 ! F846 ! FB39 ! 1AA1 ! D7CF !
!SETWND ! ! ! ! ! ! 1AB0 ! !
!STROBE ! ! ! ! ! ! 1840 ! !
!TABV ! FB50 ! FBFF ! FC01 ! FC01 ! FB5B ! 1ABF ! D94E !
!UP ! FC27 ! FC33 ! FC37 ! FC37 ! FC1A ! 1929 ! D833 !
!VTAB ! FC2F ! FC5B ! FC5F ! FC5F ! FC22 ! 1931 ! D83D !
!VTABZ ! FC31 ! FC5D ! FC61 ! FC61 ! FC24 ! 1933 ! D83D !
!WAIT ! FB94 ! FB2F ! FB94 ! FB94 ! FCA8 ! 1B07 ! D98E !
! ! ! ! ! ! ! ! !
------------------------------------------------------------
iLavr
-
- Retired
- Posts: 1328
- Joined: 25 Jul 2011 00:14
- Location: WWW
ололо слоупок детектед.
в орионе вроде как тоже пытались придать названия подпрограммам.
скролл не нужен.
опрос клавиатуры в агате
сложно, правда.
P.S. научый работник, следи за собой, будь сторожен(c)
в орионе вроде как тоже пытались придать названия подпрограммам.
скролл не нужен.
опрос клавиатуры в агате
Code: Select all
...
STA $C010
LDA $C000
...
P.S. научый работник, следи за собой, будь сторожен(c)
-
- Supreme God
- Posts: 16676
- Joined: 21 Oct 2009 08:08
- Location: Россия
Что-то меня одна странная неувязочка смущает...
Если посмотреть диаграммы цикла 6502, то видно:

что сигнал φ2 (он же Ø2, Ф2, Phi2, F2) активен высоким уровнем.
Это, собственно, подтверждает и типичная схема формирования
сигналов /READ и /WRITE.

На схеме дендика из дискретных элементов видно, что сигнал φ2,
активный высоким уровнем, выводится на пин 32 разъёма.

Но почему-то у микросхемы HA6527 этот сигнал φ2 (он же Ø2, Ф2,
Phi2, F2) обозначен как /M2 !

И на всех изображениях разъёма дендика его обозначают как /M2 !



Я даже было ошибочно подумал, что /M2 (#М2) - это φ2,
но умощнённый до разъёма инвертором...
Реально же оказалось, что это не так.
Так в чём смысл того, что сигнал φ2 (он же Ø2, Ф2, Phi2, F2)
активный высоким уровнем обозначают также как /M2 (или #М2),
активный низким уровнем?

Если посмотреть диаграммы цикла 6502, то видно:

что сигнал φ2 (он же Ø2, Ф2, Phi2, F2) активен высоким уровнем.
Это, собственно, подтверждает и типичная схема формирования
сигналов /READ и /WRITE.

На схеме дендика из дискретных элементов видно, что сигнал φ2,
активный высоким уровнем, выводится на пин 32 разъёма.

Но почему-то у микросхемы HA6527 этот сигнал φ2 (он же Ø2, Ф2,
Phi2, F2) обозначен как /M2 !


И на всех изображениях разъёма дендика его обозначают как /M2 !




Я даже было ошибочно подумал, что /M2 (#М2) - это φ2,
но умощнённый до разъёма инвертором...
Реально же оказалось, что это не так.
Так в чём смысл того, что сигнал φ2 (он же Ø2, Ф2, Phi2, F2)
активный высоким уровнем обозначают также как /M2 (или #М2),
активный низким уровнем?
iLavr
-
- Banned
- Posts: 2139
- Joined: 20 Mar 2005 13:41
- Location: От туда
-
- Retired
- Posts: 1328
- Joined: 25 Jul 2011 00:14
- Location: WWW
Code: Select all
-------
GND - |01 31| - +5V
PRG A11 - |02 32| - M2
PRG A10 - |03 33| - PRG A12
PRG A9 - |04 34| - PRG A13
PRG A8 - |05 35| - PRG A14
PRG A7 - |06 36| - PRG D7
PRG A6 - |07 37| - PRG D6
PRG A5 - |08 38| - PRG D5
PRG A4 - |09 39| - PRG D4
PRG A3 - |10 40| - PRG D3
PRG A2 - |11 41| - PRG D2
PRG A1 - |12 42| - PRG D1
PRG A0 - |13 43| - PRG D0
PRG R/W - |14 44| - PRG /CE ( /A15 + /M2 )
/IRQ - |15 45| - Audio from 2A03
GND - |16 46| - Audio to RF
CHR /RD - |17 47| - CHR /WR
CIRAMA10- |18 48| - CIRAM /CE
CHR A6 - |19 49| - CHR /A13
CHR A5 - |20 50| - CHR A7
CHR A4 - |21 51| - CHR A8
CHR A3 - |22 52| - CHR A9
CHR A2 - |23 53| - CHR A10
CHR A1 - |24 54| - CHR A11
CHR A0 - |25 55| - CHR A12
CHR D0 - |26 56| - CHR A13
CHR D1 - |27 57| - CHR D7
CHR D2 - |28 58| - CHR D6
CHR D3 - |29 59| - CHR D5
+5V - |30 60| - CHR D4
-------
-
- Banned
- Posts: 2139
- Joined: 20 Mar 2005 13:41
- Location: От туда
Был такой человек, печатался в Радио, целый цикл статей про Денди (ремонт в частности), Сегу и даже первоЗЫЧ. За косяки и вольности в его статьях ему вся эмубратия ежедневно посылает лучи ненависти и говна вот уже почитай 10 лет! Дааа, я помню свое первое общение на твгамез, который тогда был еще на народе, в 2003м году. Была там одна темка... Ну да ладно. Просто он печатался, а другие нет, такие дела.MC68k wrote:кто такой Рюмик? может я тоже пошлю ему лучи ненависти.
-
- Supreme God
- Posts: 16676
- Joined: 21 Oct 2009 08:08
- Location: Россия
Ну Рюмика я знаю. Иногда он даже весёлые плюшки выдаёт...
Тем не менее, вот эта картинка - от MiGeRA:

http://dendy.migera.ru/nes/g14.html
И вот эта картинка - взята оттуда же.

Что, Рюмик так глубоко въехал в мозг всей эмубратии?
Я на грабли-то не наступил, поскольку обычно сравниваю информацию
из разных источников.
Но вот такое обозначение с толку сбивает, когда схемы рисуешь...

Поэтому я призадумался, может быть низкий активный уровень φ2 имеет
какой-то смысл, и его обозначают /М2.
Ну нет - так нет...
PS. Так что Рюмика по поводу денди я читал только в его эссе о ГИТС-2.
Картинки взяты из этого источника: Игровая приставка Dendy (Часть 3)
Ну а сам HardWareMan, похоже, Рюмиком увлекался активно и некритично:

Выходит, что лучи ненависти - это такая штука... обоюдоострая!
С учетом того, что HardWareMan "Когдато, ... срисовал схему свое Денди",
то, видимо, его зловещий Рюмик под локоть подталкивал...

Тем не менее, вот эта картинка - от MiGeRA:

http://dendy.migera.ru/nes/g14.html
И вот эта картинка - взята оттуда же.

Что, Рюмик так глубоко въехал в мозг всей эмубратии?

Я на грабли-то не наступил, поскольку обычно сравниваю информацию
из разных источников.
Но вот такое обозначение с толку сбивает, когда схемы рисуешь...


Поэтому я призадумался, может быть низкий активный уровень φ2 имеет
какой-то смысл, и его обозначают /М2.
Ну нет - так нет...

PS. Так что Рюмика по поводу денди я читал только в его эссе о ГИТС-2.
Картинки взяты из этого источника: Игровая приставка Dendy (Часть 3)
Ну а сам HardWareMan, похоже, Рюмиком увлекался активно и некритично:


Выходит, что лучи ненависти - это такая штука... обоюдоострая!

С учетом того, что HardWareMan "Когдато, ... срисовал схему свое Денди",
то, видимо, его зловещий Рюмик под локоть подталкивал...

iLavr
-
- Admin
- Posts: 23989
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
3D-бродилка на оригинальном C64 c неразогнанным 6502 на борту:
с обильно откомментированными исходниками
с обильно откомментированными исходниками

Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Supreme God
- Posts: 16676
- Joined: 21 Oct 2009 08:08
- Location: Россия
А никто не подскажет доступный документ по 6502, где бы были его подробные
внутренние растактовки в привязке ко взаимодействию основных частей?
Ну по примеру, как мы привыкли и знаем для i8080:"в первом такте по спаду Ф1
процесор выставляет активный уровень сигнала SYNC..." ну и т.д.
Я поискал - но неудачно как-то.
Может, кто знает точно, где глянуть?
внутренние растактовки в привязке ко взаимодействию основных частей?
Ну по примеру, как мы привыкли и знаем для i8080:"в первом такте по спаду Ф1
процесор выставляет активный уровень сигнала SYNC..." ну и т.д.
Я поискал - но неудачно как-то.

iLavr