65816, также известный как 65c816, используется во многих игровых картриджах SNES.
1 ответ

Как изменить положение спрайта с помощью сборки 65c816 для SNES?

Я пытаюсь изменить позицию своего спрайта, но не могу понять, как Я часами искал ответы, но ни один из них не работает с ассемблером, который я использую: WLA-DX. Я чрезвычайно новичок в сборке 6502, так что прости меня, если моя логика действительн…
08 фев '19 в 20:06
2 ответа

Как устанавливается флаг переноса в этом коде сборки?

Учитывая следующий код сборки для 16-битной функции PRNG, $80/8111 E2 20 SEP #$20 ; set 8-bit mode accumulator $80/8113 AD E5 05 LDA $05E5 ; load low byte of last random number $80/8116 8D 02 42 STA $4202 $80/8119 A9 05 LDA #$05 ; multiply it by 5 $…
20 апр '16 в 13:36
0 ответов

Как «beq [label]» может вызвать ошибку вне допустимого диапазона?

Я пытаюсь скомпилировать этот фрагмент кода и не могу понять ошибку ассемблера: [...] .macro collflag flags RW_forced a8i16 lda EXRAM, x and flags RW_forced a16i16 .endmac [...] col_r: RW_forced a16i16 lda lamus_vx bmi col_l beq col_d lda lamus_tile…
16 мар '21 в 01:27
1 ответ

Как переместить нулевую страницу на 65816

Исходная информация Как современный PHP-разработчик с мимолетным интересом к 8-битным технологиям, я немного отрывочен от реальных низкоуровневых вещей. Хотя я работал с процессором Z80 и делал некоторые сборки MIP в университете, я меньше всего раз…
10 окт '21 в 13:43
0 ответов

Передать метку в качестве параметра макроса для ассемблера ca65?

Я использую cc65 / ca65 для игры с основными инструкциями SNES. В некоторых из найденных мною примеров используется wla, который, по-видимому, позволяет передавать метку в макрос в качестве параметра. Я преобразовал его, надеюсь, использовать ca65: …
19 окт '21 в 08:17
0 ответов

Как правильно управлять стеком при использовании PEA?

Последние пару недель я медленно изучал 65816, и, полагаю, меня ждут несколько бомб замедленного действия, если я сейчас не устраню это в зародыше. Пример макроса: (я знаю, что это сбивает регистры вызывающего абонента, и это нормально) .macro Write…
31 окт '21 в 00:23
3 ответа

Пытаюсь понять ассемблерный код 65c816 — какова цель такого порядка инструкций?

Я новичок в сборке и пытаюсь понять, что делает этот фрагмент кода. Вот эталон Super NES 65c816, который я использую. 01: $A4917E AD E5 05 LDA $05E5 [$A4:05E5] 02: $A49181 29 3F 00 AND #$003F 03: $A49184 AA TAX 04: $A49185 AD E5 05 LDA $05E5 [$A4:05…
26 фев '23 в 08:24
0 ответов

Сборка 65C816, загружающая данные в таблицу в памяти, не работает должным образом

Кто-нибудь из экспертов ASM хочет что-то объяснить? У меня есть это (закомментированы вторичные цвета): ; ; --- Tables for setting SCB and color tables for color -------- ; ENTRY logocolor logocolor DC.W $00B0 ;$ DC.W $0AD9 DC.W $0FF0 ;$ DC.W $0FFB …
24 янв '23 в 18:19
0 ответов

Разделить переменную <INCLUDES> в вызове CMAKE_[LANGUAGE]_COMPILE_OBJECT

Я получил следующую переменную set( CMAKE_CA65816_COMPILE_OBJECT "<CMAKE_CA65816_COMPILER> --cpu 65816 -s -o <OBJECT> <SOURCE> -I <INCLUDES>") Это приводит к этой команде ca65 --cpu 65816 -s -o Game.s.o Game.s -I include_dir1…
13 июл '22 в 16:16