Instructions
This commit is contained in:
37
README.md
Normal file
37
README.md
Normal file
@ -0,0 +1,37 @@
|
||||
# Wonky French Flag
|
||||
|
||||
This is an example ZX Spectrum program which produces a wonky French flag.
|
||||
|
||||
## Usage
|
||||
|
||||
- Clone this git repository
|
||||
- Change into the directory
|
||||
- Run `code .` to bring up VSCode
|
||||
- Agree to "Reopen in container"
|
||||
- Wait for the devcontainer to download and initialise
|
||||
- Build the project with `make`
|
||||
- Open the `myprog.sna` file in your favourite Spectrum emulator
|
||||
- Recoil at flag wonkiness
|
||||
- Open `main.asm` in the VSCode editor and have a quick read
|
||||
- Select "Run and Debug" from the bar on the far left
|
||||
- In the drop down bar at the top, select "Simulator - ZX48K Spectrum"
|
||||
- Press the "Start Debugging" green arrow to the left of the dropdown list
|
||||
- Select the "Continue" arrow from the wee icon menu which has appeared at the top of the screen
|
||||
- Recoil again at the wonky flag
|
||||
- Stop debugging by pressing the square at the far right of the wee icon menu
|
||||
- Go back to the `main.asm` file
|
||||
- Left click on the space to the left of the line number at line 25
|
||||
- A little red breakpoint blob should have appeared. You can toggle this by clicking on it
|
||||
- Start debugging again
|
||||
- Press "Continue" arrow as before
|
||||
- The debugger will stop the program running at the breakpoint
|
||||
- Keep pressing the "Step into" downwards arrow on the wee icon bar
|
||||
- Note what is happening to the registers on the left and the screen on the right
|
||||
- Watch the red stripe getting painted
|
||||
- Have a moment of revelation about how you're going to fix this
|
||||
- Stop the debugger
|
||||
- Edit `main.asm` to fix the bug
|
||||
- Remember to save the file and run `make` again to rebuild the program
|
||||
- Remove the breakpoint on line 25
|
||||
- Run in the debugger again
|
||||
- Marvel at the lovely flag
|
Reference in New Issue
Block a user