Автор Тема: Programming the 6502  (Прочитано 7243 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Maror

  • Пользователь
  • Сообщений: 19
    • Просмотр профиля
Programming the 6502
« : 25 Январь 2014, 22:22:45 »
Как и обещал в теме (про Turtle Soup Mod) - начал переводить книгу про программирование Денди. Пока готовы шесть глав (без рисунков). Очень надеюсь, что с её помощью хороших, годных разрабов (и соответственно, игр) станет ещё больше. Встречаем!

P. S. Если модераторы сочтут перевод нарушением авторских прав - готов убрать его отсюда в любой момент.

P. P. S. Внимание! Ошибки могут быть. Всем заранее спасибо за замечания. Оригинал книги (по которому можно свериться) тут:

http://www.romhacking.net/documents/615/
« Последнее редактирование: 02 Февраль 2014, 16:55:03 от Maror »

Оффлайн SILENT_Pavel

  • Пользователь
  • Сообщений: 2735
    • Youtube
    • Просмотр профиля
Re: Programming the 6502
« Ответ #1 : 25 Январь 2014, 22:26:53 »
А в ней можно узнать как собрать (скомпилировать в рабочий ром?) из исходного кода игру, вот из этих исходных кодов НЕС игр? Извиняюсь если вопрос очень глупый.
http://www.assemblergames.com/forums/showthread.php?48282-Source-code-collection-for-many-games

Оффлайн Lomax

  • Ушел с форума
  • Сообщений: 3192
    • Просмотр профиля
Re: Programming the 6502
« Ответ #2 : 25 Январь 2014, 22:27:50 »
Титанический труд, спасибо) Весьма пригодится

Оффлайн Maror

  • Пользователь
  • Сообщений: 19
    • Просмотр профиля
Re: Programming the 6502
« Ответ #3 : 25 Январь 2014, 22:31:26 »
А в ней можно узнать как собрать (скомпилировать в рабочий ром?) из исходного кода игру, вот из этих исходных кодов НЕС игр? Извиняюсь если вопрос очень глупый.
http://www.assemblergames.com/forums/showthread.php?48282-Source-code-collection-for-many-games
Вряд ли. Хотя бы потому, что в те времена (70-е - начало 80-ых) Денди ещё в проекте не было :-)

Оффлайн nya

  • Пользователь
  • Сообщений: 57
  • Пол: Мужской
    • Просмотр профиля
Re: Programming the 6502
« Ответ #4 : 26 Январь 2014, 02:50:07 »
Ещё рекомендую посмотреть хорошую книгу Язык Ассемблера для персонального компьютера ЭПЛ У.Моррер 1987.
Считаю лучшая книга на русском языке, по программированию процессора 6502.

Оффлайн aodinets

  • Пользователь
  • Сообщений: 705
  • Пол: Мужской
  • Нет никакой ложки.
    • Просмотр профиля
Re: Programming the 6502
« Ответ #5 : 26 Январь 2014, 12:01:31 »
Maror, неплохо бы ссылочку на оригинал книги. Переводчики не безгрешны=)

Оффлайн Maror

  • Пользователь
  • Сообщений: 19
    • Просмотр профиля
Re: Programming the 6502
« Ответ #6 : 26 Январь 2014, 13:04:45 »
Ещё рекомендую посмотреть хорошую книгу Язык Ассемблера для персонального компьютера ЭПЛ У.Моррер 1987.
Считаю лучшая книга на русском языке, по программированию процессора 6502.
Спасибо, обязательно прочитаю. Просто эта ветка форума - про разработки (про переводы, хаки и т. д.). Зачем же я буду писать в ней про то, что УЖЕ сделано.

Maror, неплохо бы ссылочку на оригинал книги. Переводчики не безгрешны=)

Тут даже не то, что не безгрешны. Я даже ещё не успел добавить рисунки и ответы к упражнениям. И уж тем более, исправить ошибки. Поэтому оригинал читать можно и нужно. Например, вот тут:
http://www.romhacking.net/documents/615/

Оффлайн teremochek

  • Пользователь
  • Сообщений: 92
    • Просмотр профиля
Re: Programming the 6502
« Ответ #7 : 26 Январь 2014, 20:18:38 »
Спасибо, почитаем.

Оффлайн spiiin

  • Модератор
  • Сообщений: 760
    • Просмотр профиля
Re: Programming the 6502
« Ответ #8 : 26 Январь 2014, 20:22:26 »
Цитата
Морер У. - Язык Ассемблера для персональных компьютеров ЭПЛ
кому надо:
http://dl.dropbox.com/u/852723/Books/%D0%9C%D0%BE%D1%80%D0%B5%D1%80%20%D0%A3.%20-%20%D0%AF%D0%B7%D1%8B%D0%BA%20%D0%90%D1%81%D1%81%D0%B5%D0%BC%D0%B1%D0%BB%D0%B5%D1%80%D0%B0%20%D0%B4%D0%BB%D1%8F%20%D0%BF%D0%B5%D1%80%D1%81%D0%BE%D0%BD%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D1%85%20%D0%BA%D0%BE%D0%BC%D0%BF%D1%8C%D1%8E%D1%82%D0%B5%D1%80%D0%BE%D0%B2%20%D0%AD%D0%9F%D0%9B%20%281987%2C%20%D0%9C%D0%BE%D1%81%D0%BA%D0%B2%D0%B0%29.djvu

В книге есть главы, посвященные Apple Disk Operating System и ассемблеру LISA, они интереса не представляют, в отличие от разделов собственно о программировании и процессоре (статьи 1-32, 50-64, 67-68, 74-80).

Оффлайн Assasin

  • Пользователь
  • Сообщений: 73
  • Пол: Мужской
    • Просмотр профиля
Re: Programming the 6502
« Ответ #9 : 26 Январь 2014, 20:45:04 »
Ну вот, опередили меня. Хотел выложить свой перевод NES ASM Tutorials.

Оффлайн babulya

  • Пользователь
  • Сообщений: 1207
  • Пол: Мужской
    • Просмотр профиля
Re: Programming the 6502
« Ответ #10 : 26 Январь 2014, 21:38:58 »
Ну вот, опередили меня. Хотел выложить свой перевод NES ASM Tutorials.
Лишним - не будет.Так даже лучше,когда 2 перевода,правда не всегда,но все же... ;)

Оффлайн Assasin

  • Пользователь
  • Сообщений: 73
  • Пол: Мужской
    • Просмотр профиля
Re: Programming the 6502
« Ответ #11 : 26 Январь 2014, 23:26:41 »
Лишним - не будет.
Только в том случае, если мой был бы в чём-то лучше. Здесь такая фундаментальная вещь, которой сложно что-то противопоставить.
Maror, несколько замечаний с вашего позволения. PC обозван как программный указатель. Program counter принято переводить как счётчик команд или как-то в этом роде. В общем-то понятно, о чём речь идёт, так что это мелочи. А ещё MUX - мультиплексор обычно, а не множитель. И A - аккумуляторный регистр, а не аккумулятор. Ну, не суть.
Цитата
Ф0, Ф1, Ф2 - сигналы часов.
А почему кириллицей?
Цитата
Инструкция ROR (ROtate Right, Поворот вправо).
Побитовый сдвиг будет звучать привычнее.
Цитата
может быть передано больше 256 байтов
Байт, а не байтов наверное.

Оффлайн teremochek

  • Пользователь
  • Сообщений: 92
    • Просмотр профиля
Re: Programming the 6502
« Ответ #12 : 27 Январь 2014, 18:34:11 »
Цитата
Теперь попробуем перевести десятичное число 11 в двоичную систему:

11 делим на 2 = 5 (остаток 1 - старший    бит = 1)
 5 делим на 2 = 2 (остаток 1 - следующий  бит = 1)
 2 делим на 2 = 1 (остаток 0 - следующий  бит = 0)
 1 делим на 2 = 0 (остаток 1 - нулевой    бит = 1)
 
Результат: 1011 (Нулевой бит - самый правый, старший - самый левый. Составляем из них число.).

Не пойму. Старший бит в столбце вверху, число 1101.  Старший бит в результате слева, число 1011.
Может опечатка.

Цитата
Теперь сложим +4 и -3 (с применением Правила двух прибавлений):

    11111101 ( 4)
+   11111101 (-3)
_______________
=(1)00000001
Еще непонятный момент. Бинарная запись четверки, как и у тройки. А правило  применяется только к отрицательным числам, вроде.
Может имелось ввиду -4 . . .

П.С. Читается интересно. Много упражнений.

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3250
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Re: Programming the 6502
« Ответ #13 : 27 Январь 2014, 19:13:51 »
Начал переводить книгу про программирование Денди.
Ну, только всё таки программирование 6502, а не Денди. 
Для второго надо еще и знать и её устройство, всмысле софтварно, ну  на это мануалы есть переведённые - Dendy_Architecture_and_Programming.doc  и NESTECH_Rus.doc. На 6502 тоже по идее хватает, может не столь уж подробные, как тут для новичков.  Программить можно и на C.




Оффлайн Maror

  • Пользователь
  • Сообщений: 19
    • Просмотр профиля
Re: Programming the 6502
« Ответ #14 : 27 Январь 2014, 22:40:51 »
Не пойму. Старший бит в столбце вверху, число 1101.  Старший бит в результате слева, число 1011.
Может опечатка.
Еще непонятный момент. Бинарная запись четверки, как и у тройки. А правило  применяется только к отрицательным числам, вроде.
Может имелось ввиду -4 . . .

П.С. Читается интересно. Много упражнений.
Да, это ошибки. В первом примере после первого деления получался нулевой бит, после второго - первый и т. д. - до старшего.

Во втором - случайно скопипастил. На самом деле там было:

      00000100 ( 4)
+    11111101 (-3)
_______________
=(1)00000001

Исправил эти ошибки, и перезалил. А так, полностью переведу и проверю примерно через месяц.
Добавлено позже:
Ну вот, опередили меня. Хотел выложить свой перевод NES ASM Tutorials.
Зря не выложили. Больше книг - хороших и разных!
« Последнее редактирование: 27 Январь 2014, 23:12:55 от Maror »

Оффлайн Skay

  • Пользователь
  • Сообщений: 4110
  • Пол: Мужской
    • Просмотр профиля
Re: Programming the 6502
« Ответ #15 : 28 Январь 2014, 01:24:51 »
Maror, чтоб не перезаливать, удобнее наверно былоб на гуглдокс залить документ. и все правки сразу окажутся на той же ссылке, плюс доступно будет не только зареганым пользователям. Типа так
« Последнее редактирование: 28 Январь 2014, 01:31:10 от Skay »

Оффлайн Maror

  • Пользователь
  • Сообщений: 19
    • Просмотр профиля
Re: Programming the 6502
« Ответ #16 : 02 Февраль 2014, 16:55:35 »
Обновление - шестая глава готова. Правда, без рисунков не очень - но скоро сделаю.