Forums Logo

Здравствуйте Гость ( Вход | Регистрация )

Reply to this topicStart new topicStart Poll

Каскадный · [ Стандартный ] · Линейный

> несколько вопросов к гуру програмирования :), гуру медитирует (c) commodore Amiga

olegan
post Четверг, 30 октября 2003, 16:48
Отправлено #1


Новичок
*

Группа: Пользователи
Сообщений: 21
Регистрация: 27 окт. 2003
Пользователь №: 5 820





вот после пары дней вникания в структуру ГБА и его протца возникло несколько вопросов
на которые не смог найти ответ (мануалей мало sad.gif ) :
1) в каком режиме всетаки работает быстрее ARM или Thumb ?
я так скромно предположил что в ARM, но в одном источнике увидел что в Thumb
2) из описалова ясно что при DMA трансфере проц замирает до окончания трансфера
вопрос как посчитать скока тактов уходит на DMA трансфер? и не проще ли самому сделать переброску ? (вдруг оно быстрее получится smile.gif)) )
3)нашел я goldroad asm, возник вопрос
делаю
mov r0,0x08000000
все нормально компилится
mov r0,0x087ffc00
пишет cannot form constant by rotation
где собака порылась? нада исполнить танец с бубном?smile.gif)
4) как сделать длиииииный переход? типа jmp
@textarea 0x08000000
b 0x0
пишет branch out of range
как ему обьяснить что нада не short jmp ?
---
теперь про железо вопрос
есть там
External Work RAM:
Start: 0x02000000
End: 0x0203FFFF
Size: 256kb
Port Size: 16 bit
Mirrors: Every 0x40000 bytes from 0x02000000 to 0x02FFFFFF
что имеется ввиду под: Mirrors: Every 0x40000 bytes from 0x02000000 to 0x02FFFFFF
---

а кстати у вас тут FAQ есть?
может я уже глубоко в оффтопике?smile.gif)))))))))


--------------------
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
PokePerevod
post Четверг, 30 октября 2003, 17:56
Отправлено #2


Маньяк
****

Группа: Пользователи
Сообщений: 256
Регистрация: 05 мая. 2003
Пользователь №: 2 021





User is offlineProfile CardPM
Go to the top of the page
+Quote Post
KoCMoHaBT
post Четверг, 30 октября 2003, 19:06
Отправлено #3


Фанат
***

Группа: Пользователи
Сообщений: 200
Регистрация: 29 дек. 2002
Пользователь №: 301





Архитектура ARM такова, что команда занимает РОВНО 32 бита. При этом туда входят все операнды. Соответственно:
1. Интеловские навыки не подходят smile.gif
2. Для того, чтобы положить константу в регистр применяется такая штука как баррел шифт. Если это неприемлемо, то сформируй ее в памяти.
3. Переход есть просто загрузка в счетчик команд адреса перехода. Соответственно тот-же гемор, что и для константы.
4. Писать надо на С smile.gif
PS: Подробнее писать лень.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
olegan
post Четверг, 30 октября 2003, 23:39
Отправлено #4


Новичок
*

Группа: Пользователи
Сообщений: 21
Регистрация: 27 окт. 2003
Пользователь №: 5 820





ну все вроде со всем разобрался
кстати архитектура чемто на амижную похожа smile.gif
промапленные в память системные регистры и все такое smile.gif))
KoCMoHaBT
а на асме мне просто нравится
вот интересно это
ldr r0,[r0,#0x8]
ldr r0,=3007ffc
это так нада или неоптимизированный С smile.gif))))))))
не сам придумал
в одном роме есть такое


--------------------
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
olegan
post Четверг, 30 октября 2003, 23:40
Отправлено #5


Новичок
*

Группа: Пользователи
Сообщений: 21
Регистрация: 27 окт. 2003
Пользователь №: 5 820







--------------------
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
olegan
post Четверг, 30 октября 2003, 23:41
Отправлено #6


Новичок
*

Группа: Пользователи
Сообщений: 21
Регистрация: 27 окт. 2003
Пользователь №: 5 820







--------------------
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
olegan
post Четверг, 30 октября 2003, 23:41
Отправлено #7


Новичок
*

Группа: Пользователи
Сообщений: 21
Регистрация: 27 окт. 2003
Пользователь №: 5 820







--------------------
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
olegan
post Четверг, 30 октября 2003, 23:42
Отправлено #8


Новичок
*

Группа: Пользователи
Сообщений: 21
Регистрация: 27 окт. 2003
Пользователь №: 5 820







--------------------
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Carumba
post Четверг, 30 октября 2003, 23:43
Отправлено #9


Hagaren
Group Icon

Группа: Профи
Сообщений: 2 092
Регистрация: 22 фев. 2003
Из: Russia, Moscow
Пользователь №: 1 224





lol1.gif lol3.gif Ещё один кандидат на казнь через баномёт smile.gif


--------------------
user posted imageuser posted image
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
olegan
post Пятница, 31 октября 2003, 01:55
Отправлено #10


Новичок
*

Группа: Пользователи
Сообщений: 21
Регистрация: 27 окт. 2003
Пользователь №: 5 820





Carumba
не будем лохматить бабушку
яж не виноват что конект такой (точнее сервант тормозит)
вот и получилось несколько раз
кнопочка запала smile.gif))


--------------------
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
MoonLight
post Пятница, 31 октября 2003, 09:15
Отправлено #11


Developer
Group Icon

Группа: Профи
Сообщений: 94
Регистрация: 02 дек. 2002
Из: Воронеж
Пользователь №: 28





QUOTE (olegan @ Четверг, 30 Октября 2003, 23:39)
ну все вроде со всем разобрался
кстати архитектура чемто на амижную похожа smile.gif
промапленные в память системные регистры и все такое smile.gif))
KoCMoHaBT
а на асме мне просто нравится
вот интересно это
ldr r0,[r0,#0x8]
ldr r0,=3007ffc
это так нада или неоптимизированный С smile.gif))))))))
не сам придумал
в одном роме есть такое

Ну я тоже думал что на асме круче будет. Теперь си,си++ и только в редких моментах асм.

зы. на чистом asm'е пишут только эмули. А ещё балуются на асме точки выводят.
ззы. А ты уверен что полностью в архитектуре разобрался мне месяц понадобилось что-бы въехать во все фишки GBA и полностью разобраться с 2д процом.
зззы. Если хочется просто побаловатся то GBA это неудачный выбор консоли. Советую для боловства GP32. На нём баловатся интереснее.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
KoCMoHaBT
post Пятница, 31 октября 2003, 10:20
Отправлено #12


Фанат
***

Группа: Пользователи
Сообщений: 200
Регистрация: 29 дек. 2002
Пользователь №: 301





QUOTE
ну все вроде со всем разобрался
кстати архитектура чемто на амижную похожа
промапленные в память системные регистры и все такое

Не похожа. Промапленные в память системные регистры везде, кроме x86, ибо это проще. Очень многое определяется процессором, например все команды arm условные, любая операция с регистрами массовая. Баррел шифт, айс и прочие навороты. Тамб, опять-же, возможность саппорта big и little endian.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
olegan
post Пятница, 31 октября 2003, 16:06
Отправлено #13


Новичок
*

Группа: Пользователи
Сообщений: 21
Регистрация: 27 окт. 2003
Пользователь №: 5 820





KoCMoHaBT
ну не прям все похоже на Амыгу, но местами есть
REG_VCOUNT
там тоже нечто подобное есть
благодаря чему видеорежимы можно находу переключать
пол экрана 320*240 и пол экрана 512*384 к примеру smile.gif
ну и еще пару штук всяких smile.gif
интересно а на амиге есть ГБА эмуль?
вроде тока ГБ видел
а то стоит без дела a4000 на столе и скучает smile.gif)))


--------------------
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
MaXXik
post Пятница, 31 октября 2003, 16:14
Отправлено #14


Переводчик герой
Group Icon

Группа: Профи
Сообщений: 156
Регистрация: 15 дек. 2002
Пользователь №: 181





2Kosmonawt Если меня не подводит память, то комманды в процессоре GBA в режиме ARM действительно 32 бита, но в режиме THUMB 16 бит.
Доступ к IRAM ( внутренней ) осуществляется по 32 битной шине, а к EVRAM по 16 битной. Соответственно в ERAM 32 битный код работаеn медленней. wink.gif
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
MaXXik
post Пятница, 31 октября 2003, 16:17
Отправлено #15


Переводчик герой
Group Icon

Группа: Профи
Сообщений: 156
Регистрация: 15 дек. 2002
Пользователь №: 181





2MoonLight Кстати насчёт асма ты не прав.
Дядька из Apex Disign который портирует на GBA Payback , явно 90 % движка писал на голом асме
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
MaXXik
post Пятница, 31 октября 2003, 16:18
Отправлено #16


Переводчик герой
Group Icon

Группа: Профи
Сообщений: 156
Регистрация: 15 дек. 2002
Пользователь №: 181





User is offlineProfile CardPM
Go to the top of the page
+Quote Post
MoonLight
post Пятница, 31 октября 2003, 17:41
Отправлено #17


Developer
Group Icon

Группа: Профи
Сообщений: 94
Регистрация: 02 дек. 2002
Из: Воронеж
Пользователь №: 28





QUOTE (MaXXik @ Пятница, 31 Октября 2003, 16:17)
2MoonLight   Кстати насчёт асма ты не прав.
Дядька из Apex Disign который портирует на GBA Payback , явно 90 % движка писал на голом асме

Про движок я не спорю. Но давай теперь прикинем какой процент кода состовляет код движка от самой игры. Там ведь ещё AI, интерфейс и кучу других веще писать надо. А они явно на асме не пишутся.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
olegan
post Пятница, 31 октября 2003, 18:41
Отправлено #18


Новичок
*

Группа: Пользователи
Сообщений: 21
Регистрация: 27 окт. 2003
Пользователь №: 5 820





MoonLight
ну все равно smile.gif мыж не в виндосе где чтоб окошко нарисовать все уже есть готовое
в играх же интерфейсы у всех разные (если это можно назвать интерфейсом, типа счетчик очков времени или жизней ну или пару тройку экранов с надписями и показателями уровней героя а-ля RPG)
я думаю что в любом случае важна оптимизация, гигагерцами не распологаем
да и размер кода тоже играет некую роль


--------------------
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
MaXXik
post Пятница, 31 октября 2003, 22:16
Отправлено #19


Переводчик герой
Group Icon

Группа: Профи
Сообщений: 156
Регистрация: 15 дек. 2002
Пользователь №: 181





2olegan Вообще то, я на твоём месте не начинал программирование на GBA с чистого асма. Начинай с СИ, но компилятор воьзми не GCC, а Arm Developer Suit 1.1 , во второй версии защита - тормоз встроена.
Так вот код , который генерирует этот компилятор мало того, что быстрее чем GCC, так он ещё и быстрее того, что ты сможешь написать сразу на асме wink.gif
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
MaXXik
post Пятница, 31 октября 2003, 22:20
Отправлено #20


Переводчик герой
Group Icon

Группа: Профи
Сообщений: 156
Регистрация: 15 дек. 2002
Пользователь №: 181





А вообще , уважаемые товарищи девелоперы, не могли бы вы поделиться инструментарием для редактирования графики, тайловых карт . Желательно коммерческие программы, поделки энтузиастов любителей мы можем и сами из сети вытащить.
Ну или хотя бы советом , что лучше, функциональнее и удобней.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
 

Упрощённая версия Сейчас: Ср., 29 мая. 2024, 02:18
Skin Designed (c) by Rooq.net, All Rights Reserved.