Photon Polls Amiga CIA Register to Halt ASM-One Code Execution

Amiga Hardware Programming 1 - Use the Assembler and wait for left click — ScoopexUs

ScoopexUs

Testing bit 6 of the Amiga CIA port register traps execution in a continuous loop until active-low mouse input clears the signal and returns control to the assembler.

AI-assisted summary of Amiga Hardware Programming 1 - Use the Assembler and wait for left click — original source. Check the original for full context.

Source published:

Key ideas

  • ASM-One provides an integrated Amiga development suite combining a source editor, debugger, and machine-code monitor driven primarily through rapid one- and two-letter commands. (0:01)
  • Amiga left mouse button detection operates on active-low logic polled via bit 6 of the CIA-A port register. (1:04)
  • A standard assemble-and-jump command executes the routine, returning directly to ASM-One with a full 68000 CPU register readout upon left-click detection. (1:04)

Detailed notes

## Background Published on YouTube by ScoopexUs on June 19, 2013, this tutorial is presented by Photon of the demo group Scoopex as an entry point into Amiga hardware programming. The video description provides download links on coppershade.org, advises viewers to configure WinUAE with cycle-exact chipset settings to accurately mimic real Amiga hardware, and mentions AsmTwo as a lightweight, compatible environment.

## TL;DR Photon introduces the ASM-One development suite, explaining its integrated source editor, machine monitor, and streamlined command-line interface. He guides viewers through writing a minimal assembly language program that polls the Amiga's CIA port register using a busy-wait loop. By explaining the active-low logic of bit 6, he demonstrates how the system continuously loops until the left mouse button is pressed. Upon execution and click detection, the program cleanly exits back to the environment, displaying a full diagnostic readout of the 68000 CPU registers.

## Atmosphere & style The presentation carries a calm, direct, and pragmatic demoscene aesthetic, favoring brisk command-line efficiency over complex graphical menus. Photon's delivery is composed and technical, giving the tutorial an authentic retro-computing feel rooted in low-level craftsmanship. Watching the video feels like looking over the shoulder of a seasoned hacker unlocking the fundamentals of bare-metal Amiga hardware in real time.

## Bulletin - [00:01](https://www.youtube.com/watch?v=p83QUZ1-P10&t=1s) ASM-One provides an integrated Amiga development suite combining a source editor, debugger, and machine-code monitor driven primarily through rapid one- and two-letter commands. - [01:04](https://www.youtube.com/watch?v=p83QUZ1-P10&t=64s) Amiga left mouse button detection operates on active-low logic polled via bit 6 of the CIA-A port register. - [01:04](https://www.youtube.com/watch?v=p83QUZ1-P10&t=64s) A standard assemble-and-jump command executes the routine, returning directly to ASM-One with a full 68000 CPU register readout upon left-click detection.

## Key takeaways - [00:01](https://www.youtube.com/watch?v=p83QUZ1-P10&t=1s) Photon introduces ASM-One as a self-contained and complete environment for Amiga hardware programming. - [00:01](https://www.youtube.com/watch?v=p83QUZ1-P10&t=1s) On startup, ASM-One prompts the user to allocate working memory for source code, project files, and included binary assets. - [00:01](https://www.youtube.com/watch?v=p83QUZ1-P10&t=1s) While top-level drop-down menus exist, keyboard-driven one- and two-letter commands provide faster navigation. - [00:01](https://www.youtube.com/watch?v=p83QUZ1-P10&t=1s) Pressing the Escape key toggles between the command-line prompt and the full-screen source code editor. - [01:04](https://www.youtube.com/watch?v=p83QUZ1-P10&t=64s) Reading the left mouse button requires polling bit 6 of the Amiga's CIA-A input/output port register. - [01:04](https://www.youtube.com/watch?v=p83QUZ1-P10&t=64s) The left mouse button operates on active-low logic: bit 6 is 1 when released and drops to 0 when pressed. - [01:04](https://www.youtube.com/watch?v=p83QUZ1-P10&t=64s) A minimal busy-wait loop continuously checks the bit and loops until a press drops execution down to a return instruction. - [01:04](https://www.youtube.com/watch?v=p83QUZ1-P10&t=64s) Executing the routine using the assemble-and-jump command locks execution in the loop until a mouse click occurs. - [01:04](https://www.youtube.com/watch?v=p83QUZ1-P10&t=64s) Returning from the user program dumps the full state of the 68000 CPU, including data registers D0–D7, address registers A0–A6, and the stack pointer A7.

## Detailed walkthrough ### [00:01](https://www.youtube.com/watch?v=p83QUZ1-P10&t=1s) Introduction to ASM-One and the Command Environment

Photon of the demo group Scoopex introduces a foundational Amiga hardware assembler programming tutorial using ASM-One. He highlights ASM-One as a self-contained and powerful suite for Amiga development, explaining, “What you see on the screen is ASM-One, which I find a very nice and complete development environment.” Upon launching, the software prompts the user to specify how much memory to allocate for working source code, included binary assets, and project files.

Once the memory size is entered, ASM-One presents a text command prompt. Although the software includes drop-down menus across the top, Photon opts to focus exclusively on the command-line interface, noting that the menus are self-explanatory and that the same operations can be executed faster using one- and two-letter commands. The integrated environment bundles together an editor, a debugger, and a machine-code monitor. Pressing the Escape key switches the display directly from the command prompt into the full-screen editor window where the assembly code is typed.

- **Environment components**: ASM-One integrates a source editor, interactive debugger, and machine monitor. - **Navigation**: Pressing the `Escape` key toggles entry into the code editor. - **Command structure**: All menu operations are mirrored at the command prompt by compact one- or two-letter commands.

---

[01:04](https://www.youtube.com/watch?v=p83QUZ1-P10&t=64s) Writing a Busy-Wait Loop for the Left Mouse Button

Inside the editor, Photon demonstrates how to construct a minimal busy-wait loop that continuously polls the left mouse button before exiting cleanly back to the assembler environment. Amiga hardware detects mouse clicks via its Complex Interface Adapter (CIA) input/output ports. Specifically, reading the left mouse button requires testing bit 6 of the CIA-A port register. Photon points out the inverted logic common to hardware signaling, explaining, “Like most input-output ports, the left mouse button input is active low.”

```mermaid flowchart TD accTitle: Left Mouse Button Polling Loop accDescr: Flowchart illustrating the active-low polling logic testing bit 6 of the CIA port register until a click is detected.

subgraph HardwareLoop ["Polling Sequence"] Start(["Label: Loop Start"]) --> TestBit["Test Bit 6 of CIA Port Register"] TestBit --> CheckState{"Bit 6 Low (0)?"} CheckState -- "No (Non-Zero / Released)" --> Start end CheckState -- "Yes (Zero / Pressed)" --> Return["RTS: Return to Assembler"] Return --> RegisterDump(["Display CPU Register Dump (D0-D7, A0-A7)"]) ```

Because bit 6 is active low, the bit remains high (non-zero) as long as the button remains unpressed; the code continually branches back to the start label. The moment the button is clicked, bit 6 clears to zero, allowing the execution to drop through the branch instruction and hit the return statement to exit back to the assembler.

To run the program, Photon issues the assemble-and-jump command targeting the first line of the source. The system appears to do nothing while trapped in the loop until the user clicks the left mouse button. Instantly upon clicking, the program terminates and ASM-One displays a diagnostic readout of the CPU state, including all data registers and address registers, specifically highlighting address register 7 (A7) as the user stack pointer. Photon concludes the lesson by previewing the following tutorial, where the loop will be expanded to manipulate a scan line across the display until the mouse button is clicked.

- **Hardware register target**: Bit 6 in the CIA input/output port register handles the primary mouse button. - **Active-low logic**: A non-zero value signifies an unpressed button, while zero indicates an active click. - **Debugger output**: Terminating back into ASM-One produces an immediate dump of the 68000 registers, including data registers (`D0`–`D7`), address registers (`A0`–`A6`), and the stack pointer / user stack pointer (`A7`).

## Notable quotes > [01:04](https://www.youtube.com/watch?v=p83QUZ1-P10&t=64s) Like most input-output ports, the left mouse button input is active low. — Photon

## Mentioned Amiga, ASM-One, AsmTwo, Complex Interface Adapter (CIA), Motorola 68000, Photon, Scoopex, WinUAE

## Video description These are the first steps - all you need to get (re?)started is at the dedicated site: http://coppershade.org/articles/More!/Downloads/ *NOTE* the Get Started with WinUAE link in the WinUAE box! Use the default Quickstart Config and check Chipset - Cycle-Exact to make the emulator behave like a real Amiga.

If you have a favorite Assembler, you should have no trouble following the series! I recently made AsmTwo specifically to provide a stable and small Asm-One version that will work out of the box on anyone's Amiga, or emulator.

"May the source be with you!" (c) Photon

[Source](https://www.youtube.com/watch?v=p83QUZ1-P10)

中文简报

Photon轮询Amiga CIA寄存器以中止ASM-One代码执行 测试Amiga CIA端口寄存器的第6位可将执行陷入死循环,直到低电平有效的鼠标输入清除该信号并将控制权返回给汇编器。 Photon介绍了ASM-One开发套件,阐述了其集成的源码编辑器、机器监视器以及高效的命令行界面。他指导观众编写一个极简汇编语言程序,该程序使用忙等待循环轮询Amiga的CIA端口寄存器。通过讲解第6位的低电平有效逻辑,他演示了系统如何持续循环,直至按下鼠标左键。在执行并检测到点击后,程序干净地退出并返回开发环境,同时显示68000 CPU寄存器的完整诊断读数。 ASM-One提供了一个集成的Amiga开发套件,融合了源码编辑器、调试器和机器码监视器,主要通过快捷的一到两个字母命令进行操作。 (0:01) Amiga鼠标左键检测基于低电平有效逻辑运行,并通过CIA-A端口寄存器的第6位进行轮询。 (1:04) 标准的汇编并跳转命令用于执行该例程,在检测到左键点击后直接返回ASM-One,并显示完整的68000 CPU寄存器读数。 (1:04)

Reading summary

Photon of the demo group Scoopex introduces foundational Amiga hardware assembly in ASM-One, demonstrating how to construct an active-low polling loop that tests the Complex Interface Adapter before exiting to the debugger. ASM-One Integrated Development and Command Workflow (0:01) ASM-One provides a self-contained programming suite on the Amiga, combining a full-screen source code editor, an interactive debugger, and a machine-code monitor. On launch, the environment requires the user to allocate memory for active source code, binary assets, and project files before opening to a text command prompt. Although drop-down menus are present, Photon favors the command line for efficiency, noting that standard operations can be executed faster via compact one- and two-letter commands. Pressing the Escape key directly switches between the command interface and the text editor. Active-Low CIA Polling and Program Execution (1:04) Amiga systems monitor the primary mouse button through the Complex Interface Adapter (CIA) input/output ports, specifically testing bit 6 of the CIA-A port register. Because hardware input signaling operates on active-low logic, bit 6 remains high (non-zero) while the left mouse button is unpressed and drops to zero when pressed. The demonstration program traps execution in a tight busy-wait loop that repeatedly checks this bit and branches to the start until the zero state is detected, at which point execution drops through to a return statement (RTS). Executing the program using ASM-One's assemble-and-jump command causes the Amiga to hold in the polling loop until the user clicks the left mouse button. Terminating the loop immediately yields execution back to the assembler environment, which prints a full 68000 CPU diagnostic state. This readout details data registers D0 through D7, address registers A0 through A6, and register A7, which functions as the user stack pointer. Photon indicates that this basic input loop serves as a baseline for future hardware control, previewing that subsequent exercises will expand the structure to alter display scan lines until an input interrupt is triggered.

精炼阅读摘要

Demo团体Scoopex的Photon介绍了在Amiga系统中使用ASM-One集成环境编写汇编程序的基础方法,并通过轮询CIA输入输出端口的特定引脚展示了检测鼠标左键点击退出的核心逻辑。 ASM-One开发环境架构与交互机制 (0:01) ASM-One为Amiga硬件汇编开发提供了一个一体化套件,将源码编辑器、交互式调试器以及机器码监视器整合在同一软件中。启动时,系统会提示开发者指定分配给源码、二进制资源和项目文件的内存大小。进入环境后,软件呈现纯文本命令行提示符,用户可以通过紧凑的单字母或双字母命令执行各项操作,这种方式相比上方提供的下拉菜单更为高效。在操作流转方面,开发者按下Escape键即可在命令行界面与全屏代码编辑窗口之间自由切换。 CIA端口位测试与低电平有效轮询 (1:04) 在硬件编程层面,Amiga通过复杂接口适配器(CIA)的输入输出端口检测外设状态。检测鼠标左键的具体实现依赖于对CIA-A端口寄存器的第6位(bit 6)进行持续轮询。该引脚遵循硬件输入输出端口常见的“低电平有效”(active low)逻辑:当鼠标左键处于未按下状态时,第6位保持高电平(非零状态),分支指令使程序持续跳回循环起始处;一旦按下左键,该位电平拉低归零,程序跳出循环并执行返回语句(RTS),安全退出至汇编器。 程序执行流程与处理器状态转储 (1:04) 通过向汇编器发送针对源码首行的汇编并跳转指令,程序进入忙等待循环。在外部未发生点击时系统表现为无响应,点击鼠标左键后程序立即终止运行并交还控制权。退出时,ASM-One会自动生成并输出详细的Motorola 68000处理器寄存器诊断信息,完整转储包括数据寄存器D0至D7、地址寄存器A0至A6,以及专门作为用户堆栈指针使用的地址寄存器A7的实时状态。 本节教程确立了基于ASM-One操作Amiga底层硬件输入的基本流程,后续教学计划在此轮询循环中扩展控制屏幕扫描线绘制的逻辑,但尚未涉及中断驱动或更复杂的并发事件处理。

Detailed notes — zh

## Background 本视频由频道 ScoopexUs 于 2013 年 6 月 19 日发布在 YouTube 平台。视频简介指出这是 Amiga 硬件编程的第一步教学,提供了配套网站 coppershade.org 的资源链接,并指导用户使用 WinUAE 模拟器的 Cycle-Exact 模式以及作者专为开箱即用编写的 AsmTwo 汇编环境。 ## TL;DR 视频首先介绍了经典 Amiga 汇编开发环境 Asm-One 的基本操作,包括启动时的内存配额设定、单字母命令行快捷操作以及编辑器窗口的切换。随后,讲师 Photon 演示了如何编写一段针对 Amiga 底层硬件的忙等待循环代码,通过检测 CIA 端口第 6 位(鼠标左键低电平有效信号)来维持程序运行。最后在用户点击左键退出程序后,展示了汇编器打印出的数据与地址寄存器状态,并预告了下一节关于修改扫描线的内容。 ## Atmosphere & style 教程整体风格极为务实、沉稳且专注底层硬件细节,散发着浓郁的复古开发与演示圈(demoscene)硬核黑客极客气息。主讲人 Photon 的语调平和从容、言简意赅,毫不拖泥带水地直奔关键代码与硬件逻辑。整个视频宛如一位经验老到的老将坐在老式 CRT 屏幕前,手把手带领观众敲下最初几行纯粹的机器控制指令,既冷静高效,又带有一种重温经典硬件机制的怀旧踏实感。 ## Bulletin - [00:01](https://www.youtube.com/watch?v=p83QUZ1-P10&t=1s) Photon 启动了 Amiga 硬件汇编系列教程,选用经典集成开发环境 Asm-One,演示了启动时为源码及二进制资源分配内存的流程与基础命令交互。 - [01:04](https://www.youtube.com/watch?v=p83QUZ1-P10&t=64s) Amiga 硬件底层的鼠标左键输入采用低电平有效(active low)逻辑,状态映射在 CIA I/O 端口寄存器的第 6 位。 - [01:04](https://www.youtube.com/watch?v=p83QUZ1-P10&t=64s) 教程实现了一个检测左键点击的忙等待循环,程序在检测到按键触发后退出,并向终端输出包含数据、地址寄存器及 A7/USP 在内的寄存器转储状态。 ## Key takeaways - [00:01](https://www.youtube.com/watch?v=p83QUZ1-P10&t=1s) 本系列教程定位为极其简单直观的 Amiga 底层硬件汇编语言实操教学。 - [00:01](https://www.youtube.com/watch?v=p83QUZ1-P10&t=1s) Asm-One 是一个高度集成的开发环境,内部整合了代码编辑器、调试器与监视器。 - [00:01](https://www.youtube.com/watch?v=p83QUZ1-P10&t=1s) Asm-One 启动时需优先输入设定源码以及后续包含的二进制文件所需的内存空间配额。 - [00:01](https://www.youtube.com/watch?v=p83QUZ1-P10&t=1s) 尽管系统界面提供了顶部下拉菜单,但通过命令行输入一至两个字母的简写指令能实现完全相同的操作且效率更高。 - [00:01](https://www.youtube.com/watch?v=p83QUZ1-P10&t=1s) 用户可以在命令行提示符界面下通过按键盘上的 Escape(ESC)键直接切换进入代码编辑窗口。 - [01:04](https://www.youtube.com/watch?v=p83QUZ1-P10&t=64s) 检测 Amiga 鼠标左键状态的底层硬件机制是测试 CIA 输入输出端口寄存器的第 6 位(bit 6)。 - [01:04](https://www.youtube.com/watch?v=p83QUZ1-P10&t=64s) 鼠标左键输入遵循低电平有效(active low)逻辑:未按下时该位保持非零,按下时变为零。 - [01:04](https://www.youtube.com/watch?v=p83QUZ1-P10&t=64s) 忙等待(busy wait)循环的核心逻辑是在第 6 位为非零时持续跳转回循环标号,直至检测为零跳出循环。 - [01:04](https://www.youtube.com/watch?v=p83QUZ1-P10&t=64s) 执行汇编并将程序计数器指向源码首行后,程序处于静默等待状态,直到用户触发鼠标左键。 - [01:04](https://www.youtube.com/watch?v=p83QUZ1-P10&t=64s) 程序正常退出并返回汇编器后,界面会自动打印所有数据寄存器、地址寄存器以及作为 A7 的用户堆栈指针(USP)。 - [01:04](https://www.youtube.com/watch?v=p83QUZ1-P10&t=64s) 后续教程计划在等待鼠标点击的循环中,进一步演示如何动态修改屏幕上的特定扫描线。 ## Detailed walkthrough ### [00:01](https://www.youtube.com/watch?v=p83QUZ1-P10&t=1s) 认识 Asm-One 开发环境与内存配置 Photon 简要介绍了这一系列的定位:这是一套极其简单直观的 Amiga 硬件汇编语言编程教学。他在屏幕上展示了经典开发工具 Asm-One,并称赞其为一个非常优秀且功能完备的开发环境。系统在初始启动时,首先会提示用户输入需要为源码以及后续包含的二进制文件(included binary files)分配多少内存空间。 在完成内存大小的输入后,屏幕便会转入命令行提示符(Command Prompt)界面。Photon 解释道,虽然界面的顶部提供了包含各种操作的下拉菜单,但命令行实际上只需输入简单的一到两个字母的缩写命令,就能完成菜单中所有的功能。整套开发环境集成了代码编辑器、调试器(debugger)以及监视器(monitor)。在教学演示中,Photon 指出顶部菜单的内容本身一目了然,因此他将主要使用命令行命令来推进演示。当需要从命令模式切换进入代码编辑窗口时,只需按下键盘上的 Escape 键即可切换。 ```mermaid flowchart TD accTitle: Asm-One启动与工作流 accDescr: 展示从启动Asm-One到进入编辑器的基本流程 A["启动 Asm-One"] --> B["输入分配内存大小"] B --> C["命令行提示符 (CLI)"] C -->|"按 ESC 键"| D["代码编辑窗口"] C -->|"一至两字母简写命令"| E["调用调试器 / 监视器 / 汇编"] ``` - Asm-One 将编辑器、调试器与监视器全部整合在单一环境中。 - 系统启动优先提示设定源码与二进制资源的内存配额。 - 顶部菜单虽然功能完备,但核心操作通过命令行简写指令执行效率更高。 ### [01:04](https://www.youtube.com/watch?v=p83QUZ1-P10&t=64s) 编写等待鼠标左键退出的忙等待循环 进入编辑器窗口后,Photon 开始编写教学的第一个小程序:一段用于“忙等待”(busy wait loop)的代码,让程序持续循环等待用户按下鼠标左键,一旦检测到按键触发,便立即退出程序并返回汇编器。在底层硬件层面,检测 Amiga 鼠标左键的状态需要通过测试 CIA 输入输出端口寄存器中的第 6 位(bit 6)。Photon 解释了这里的硬件逻辑原理:“Like most input output ports, the left mouse button input is active low.” 所谓低电平有效(active low),意味着当按键未被按下时该位保持非零状态;只要该位为非零,程序就必须分支跳转(branch back)回到前面的标号处继续循环。 当鼠标左键被按下时,对应端口位变为零,程序跳出循环并返回汇编器。编写完成后,Photon 执行了汇编并将程序指针跳转至源码第一行开始运行。在按下按键之前,屏幕看起来没有任何动态反应。正如 Photon 所说:“Nothing seems to happen until you click the left mouse button.” ```mermaid flowchart TD accTitle: 鼠标左键检测逻辑 accDescr: 检测CIA端口bit 6直到按下鼠标左键退出的循环 A["循环标号 (Label)"] --> B["测试 CIA I/O 端口的 Bit 6"] B --> C{"Bit 6 是否为 0?\n(低电平有效)"} C -- "否 (非零 / 未按下)" --> A C -- "是 (为 0 / 已按下)" --> D["退出循环,返回汇编器"] ``` 一旦用户点击鼠标左键,程序便正常终止,屏幕上随即列出整齐详细的寄存器状态清单,包括所有数据寄存器(Data Registers)、地址寄存器(Address Registers),以及作为 A7 寄存器存在的用户堆栈指针(User Stack Pointer, USP)。在简要说明完这些输出后,Photon 预告了下一节教程的计划:届时将演示如何在等待鼠标点击的同时,动态修改屏幕上的某一条扫描线(scan line)。 - 硬件检测核心:读取 Amiga 的 CIA I/O 端口寄存器第 6 位。 - 信号电平规则:鼠标左键为低电平有效(active low),非零表示松开,零表示按下。 - 程序终止输出:返回汇编器时会自动打印当前所有数据寄存器、地址寄存器以及 A7(用户堆栈指针 USP)的值。 ## Notable quotes > [01:04](https://www.youtube.com/watch?v=p83QUZ1-P10&t=64s) Like most input output ports, the left mouse button input is active low. — Photon ## Mentioned Amiga, Asm-One, AsmTwo, CIA, Photon, ScoopexUs, WinUAE ## Video description These are the first steps - all you need to get (re?)started is at the dedicated site: http://coppershade.org/articles/More!/Downloads/ *NOTE* the Get Started with WinUAE link in the WinUAE box! Use the default Quickstart Config and check Chipset - Cycle-Exact to make the emulator behave like a real Amiga. If you have a favorite Assembler, you should have no trouble following the series! I recently made AsmTwo specifically to provide a stable and small Asm-One version that will work out of the box on anyone's Amiga, or emulator. "May the source be with you!" (c) Photon [Source](https://www.youtube.com/watch?v=p83QUZ1-P10)

Source quotes

[1:04] Photon: Like most input output ports, the left mouse button input is active low.

Source quotes

[1:04] Photon: Like most input-output ports, the left mouse button input is active low.

Original transcript

[0:01] Hello, I'm Photonov Scoopex. Uh, this is [0:04] a very simple AmIGGA hardware assembler [0:08] programming tutorial. What you see on [0:11] the screen is [0:13] ASM1. Uh, which I find a very nice and [0:17] complete uh, development [0:19] environment. Uh, at the start it asks [0:22] how much memory you want you want to [0:24] allocate for your source codes and your [0:27] included binary files. and so [0:35] on. Entering the amount of memory uh [0:38] gives you a command [0:40] prompt which has one and twoletter [0:43] commands that does all the things up [0:45] here in the [0:46] menus. The development environment [0:48] includes an editor, debugger and [0:50] monitor. [0:53] And um I will show you only the um [0:57] command line [0:59] commands because the uh menus are [1:02] self-explanatory. To enter the editor, [1:04] press [1:05] escape. This is your editor window. You [1:09] write your code here. The first thing [1:10] we're going to do is um write um busy [1:15] loop, a busy weight loop that waits for [1:18] the left mouse button to be pressed and [1:20] then exits um the little program goes [1:23] back to the [1:26] assembler. This is a [1:32] label to test uh the left mouse button. [1:35] You test bit six in this register in the [1:39] CIA input output [1:43] ports. Um like most input output ports [1:48] um the uh left mouse button input is [1:51] active low. That means as long as it's [1:55] non zero we should jump back branch back [2:00] to um the above [2:03] label. And when it's zero, we should [2:06] return to the [2:08] assembler. Let's try [2:10] it. Assemble and jump to the first line [2:15] in the [2:16] source. Nothing seems to happen until [2:19] you click the left mouse button. And [2:22] then you're presented with uh a nice [2:24] little register value list with the data [2:28] val register values and the address [2:30] register [2:31] values including the stack pointer the [2:34] user stack pointer which is address [2:36] register [2:37] 7. That's all there is to it. In the [2:41] next [2:41] tutorial, we will [2:45] um change a scan line on the screen [2:49] until the left mouse button is pressed.