Описание тега ca65
NoneCa65 is a powerful macro assembler for the 6502, 65C02 and 65816 CPUs.
1
ответ
CC65: четыре строки плохие, две строки хорошие?
Я пытаюсь сделать IO, используя stdio.h на Commodore 64, но у меня есть даже со следующей программой: #include <stdio.h> void main(void) { printf("Foo\n"); printf("Bar\n"); /* printf("Foo\n"); */ /* printf("Bar\n"); */ } Проблема в том, если я…
23 дек '13 в 10:32
2
ответа
Пример удаления боковых границ на C64
Я знаю, что можно удалить верхнюю и нижнюю границы в C64, используя сборку, и я нашел примеры кодов для этого. Но я не могу найти пример кода для удаления боковых границ (который был изобретен 1001 Crew.) Кто-нибудь знает какие-нибудь примеры этого?
18 фев '15 в 15:32
2
ответа
Автоматическое заполнение, чтобы собрать определенные инструкции в заранее определенные адреса
Я хотел бы использовать CA65 для сборки ПЗУ 6502, которое должно работать самостоятельно, т.е. другого доступного ядра нет. Я бы хотел, чтобы моя программа начиналась с $C000, Но это значит, мне тоже нужно поставить $00 $C0 в вектор сброса в $FFFC, …
20 фев '15 в 09:59
2
ответа
CA65: "Ошибка диапазона" из 16-битного вычисленного адреса
Учитывая следующий код CA65: foo = $82 .scope LDA #$ff STA foo*$40 .endscope Я получаю это сообщение об ошибке: foo.s(5): Error: Range error (8320 not in [0..255]) Интересно, что следующая версия работает как положено: foo = $82 LDA #$ff STA foo*$40…
17 май '13 в 18:21
1
ответ
Изменить цвет текста без цветовой памяти в C64/Assembly
У меня есть код, как показано ниже, и он отлично работает. Он очищает экран, помещает некоторые цвета в цветовую память первых 12 символов на экране и печатает текст на экране. jsr $e544 ldx #$00 lda #3 loopclr: sta $d800,x inx cpx #$0c bne loopclr …
19 фев '15 в 01:20
1
ответ
Проблема с картой памяти сегмента CA65
Я работаю над проектом 6502 в CA65, и у меня возникают проблемы с пониманием некоторых директив. Я хочу, чтобы сегмент был определен так, как если бы он находился в другой части памяти, так что вся адресация этого кода, как если бы он уже находился …
18 дек '15 в 16:28
1
ответ
Компиляция простой программы с использованием ca65
Я начинаю изучать сборку 6502, используя книгу Родни Закса "Программирование 6502. В ней есть пример кода, я хотел бы иметь возможность запустить его на своем MacBook. Я надеюсь, что код сможет работать в том виде, в котором он представлен в книге, …
28 июл '19 в 17:08
1
ответ
Как заставить код правильно работать на Apple ii
Я написал небольшой фрагмент кода (add.asm, показанный ниже) на сборке 6502, но у меня возникли некоторые проблемы с его правильной работой на эмуляторе Apple II. Используя приведенный ниже файл конфигурации и ca65 и ld65, я могу получить двоичный ф…
09 ноя '19 в 19:50
2
ответа
C64 сборка рендеринга спрайта
Я написал короткую программу в 6502 ассемблере для Commodore 64 с помощью CA65 ассемблера и ld65 линкера. Программа должна отобразить спрайт сплошного квадрата где-то рядом с центром дисплея, но я не вижу, чтобы что-либо отображалось. Это моя сборка…
14 фев '20 в 01:50
1
ответ
ca65: Include Guard генерирует сообщение "Ошибка: ожидается идентификатор"
Пытаясь научиться использовать ассемблер ca65, я боролся с тем, чтобы заставить работать охрану включения. Поиск в Google и чтение руководства пользователя ca65 не помогли. Вот минимальный пример, который вызывает ошибку. $ ls -l total 16 -rw-r--r--…
22 окт '19 в 21:46
1
ответ
Убедитесь, что данные не пересекают границы страницы
Я пытаюсь создать оператор switch, как показано ниже, который хорошо работает, пока что-то не пересечет страницу. Назначение коммутатора создается автоматически, поэтому оно находится в другом файле. 'структура, x' содержит смещение (переключатель р…
15 мар '21 в 02:30
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
ответ
CL65 не корректирует адреса при использовании .align
Я пытаюсь написать программу asm, которая использует директиву .align, чтобы данные не пересекали границы страницы. Однако, хотя данные находятся в правильном месте в памяти, скомпилированный код не использует правильный адрес. Согласно документам (…
05 апр '21 в 12:34
0
ответов
Передать метку в качестве параметра макроса для ассемблера ca65?
Я использую cc65 / ca65 для игры с основными инструкциями SNES. В некоторых из найденных мною примеров используется wla, который, по-видимому, позволяет передавать метку в макрос в качестве параметра. Я преобразовал его, надеюсь, использовать ca65: …
19 окт '21 в 08:17
1
ответ
Проблема CA65 NES с INY STY
Я новичок в CA65 и пытаюсь передать ему проект NESASM. Я все перевел и все строится. Когда я бегу, я ничего не получаю. Просто черный экран. Погружаясь глубже, я получаю бесконечный цикл. Кажется, проблема с увеличением Y (INY), а затем все, что я у…
07 дек '21 в 05:45
0
ответов
Чем отличается обычная этикетка от процедуры?
Недавно я начал писать код на системах на базе 6502 и использовал ассемблер макросов ca65. Однако я узнал, что он поддерживает процедуры, использующие .proc . Поэтому мне было интересно, в чем разница между этими блоками кода: mainLabel: jsr subrout…
03 фев '23 в 19:26
0
ответов
6502 Компоновщик ASM вычисляет неправильное смещение перехода
Мне кажется, что компоновщик ASM 6502 таким образом искажает логическую последовательность моего кода, поэтому я не могу объяснить, почему. В строках, отмеченных (<-- O), указатель адреса смещается на 2 байта. Таким образом, он переходит на строк…
22 окт '23 в 22:29
0
ответов
Как включить файл, заданный в качестве параметра макроса в ca65
Я пытаюсь написать макрос ca65, который должен включать файл, указанный в качестве параметра макроса. ca65 — ассемблер компилятора cc65. Хотя я научился работать с командой .incbin: .macro includethis4 filename .incbin .concat (filename, ".", "i") ;…
06 окт '23 в 00:22