slithymatt / x16-assembly-tutorial Goto Github PK
View Code? Open in Web Editor NEWA tutorial for learning 65C02 Assembly Language using the Commander X16
License: GNU General Public License v3.0
A tutorial for learning 65C02 Assembly Language using the Commander X16
License: GNU General Public License v3.0
Here are some tips that could be added to the readme file
To get a more closer mirror type the following in your browser:
https://www.cygwin.com/mirrors.html
select the mirror for your country
then paste into the setup option of 'User Url' as shown in figure 1
then click add
after doing the following
$ mkdir workspace
$ cd workspace
open the following file:
C:\cygwin64\home\User\.bashrc
append the following to the file
cd /cygdrive/c/Users/user
where 'user' is your login name
so next time you open the cgywin bash it will open in your workspace
Alternatively use this option
On Windows:
when a folder is selected right click and select as shown in figure 2
` Bash Prompt Here
Considering that the README says "feel free to do what you want with these code examples," I believe that the BSD or MIT licenses would be better choices for this repository.
I just started getting cygwin set up on my Win10 machine, diligently following your instructions. Everything went well. I chose option 2 for the symbolic links (doing them inside the cygwin terminal rather than in my Windows path parameters). When I arrived at the x16 rom and emulator steps, it took me a while that I should git clone those repos as well. Downloading the binaries works well, but from a close-to-unix-noob status, I wanted to clone the repos so I can easily replace them as new versions arrive.
there doesn't seem to be a specific step for installing SDL2 on cygwin after the fact inside the terminal. I followed your other repo's readme (https://github.com/SlithyMatt/x16-assembly-tutorial) and I wish I would have just checked in SDL2 at that step.
The other missing step I found is that the cygwin environment is not finding ld65,exe, so I added it by going to /usr/bin and doing ln -s /cygdrive/c/users/whatever/workspace/cc65/bin/ld65.exe
Not doing so makes the rom make step complain about its absence. Just thought you'd add a line about these in the otherwise excellent readme files, which guided me well by the hand despite my 20 year old rust in unix navigation
edit - you already answered in the x16 community forums that it makes little sense to attempt a compilation of the emulator...inside the cygwin environment - just stick with the windows binary. makes sense! Although the ROM step was a very minor issue that would remain here if and only if they don't package the bleeding edge version every time in their win compiled binairies.
I believe the stopwatch lesson may need to be updated to work with the latest X16 release. I made these changes locally to get it to work:
% git diff origin
diff --git a/Lesson10/stopwatch.asm b/Lesson10/stopwatch.asm
index 4492aff..9834e0b 100644
--- a/Lesson10/stopwatch.asm
+++ b/Lesson10/stopwatch.asm
@@ -165,9 +165,10 @@ custom_irq_handler:print_display:
stz VERA_ctrl
- lda #$20 ; stride = 2
- lda #$21 ; stride = 2
sta VERA_addr_bank
lda #DISPLAY_Y- ora #$B0
sta VERA_addr_high
lda #(DISPLAY_X * 2)
sta VERA_addr_low
I tried to create a pull request for this, but I either have something set-up wrong (new system/set-up), or I don't have permissions to write to your repo:
ERROR: Permission to SlithyMatt/x16-assembly-tutorial.git denied to ShawnLewis62.
fatal: Could not read from remote repository.Please make sure you have the correct access rights
and the repository exists.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.