<divclass="content"><spanclass="timecode">15:55</span>Come to understand how to specify that rs1 represents an immediate or a register, thanks to the reply to the "Confusion Regarding Freedom E SDK inline asm" forum thread<sup>3</sup></div>
<divclass="content"><spanclass="timecode">15:55</span>Come to understand how to specify that rs1 represents an immediate or a register, thanks to the reply to the "Confusion Regarding Freedom E SDK inline asm" forum thread<sup>3</sup></div>
<divclass="content"><spanclass="timecode">15:55</span>Come to understand how to specify that rs1 represents an immediate or a register, thanks to the reply to the "Confusion Regarding Freedom E SDK inline asm" forum thread<sup>3</sup></div>
<divclass="content"><spanclass="timecode">18:25</span>Read clear_csr() to put csrrc into perspective with our new understanding of pseudo-instructions and the i vs r hints</div>
<divclass="progress faded">
<divclass="content"><spanclass="timecode">18:25</span>Read clear_csr() to put csrrc into perspective with our new understanding of pseudo-instructions and the i vs r hints</div>
</div>
<divclass="progress main">
<divclass="content"><spanclass="timecode">18:25</span>Read clear_csr() to put csrrc into perspective with our new understanding of pseudo-instructions and the i vs r hints</div>
<divclass="content"><spanclass="timecode">22:24</span>Read about CSRRCI in the CSR Instructions section of the User-Level ISA Specification<sup>4</sup></div>
<divclass="content"><spanclass="timecode">22:24</span>Read about CSRRCI in the CSR Instructions section of the User-Level ISA Specification<sup>4</sup></div>
<divclass="content"><spanclass="timecode">22:24</span>Read about CSRRCI in the CSR Instructions section of the User-Level ISA Specification<sup>4</sup></div>
<divclass="content"><spanclass="timecode">40:21</span>Pop back up to the top of the stack, to reset_demo(), and read about the currently allocated RISC-V machine-level CSR addresses<sup>6</sup></div>
<divclass="content"><spanclass="timecode">40:21</span>Pop back up to the top of the stack, to reset_demo(), and read about the currently allocated RISC-V machine-level CSR addresses<sup>6</sup></div>
<divclass="content"><spanclass="timecode">40:21</span>Pop back up to the top of the stack, to reset_demo(), and read about the currently allocated RISC-V machine-level CSR addresses<sup>6</sup></div>
<divclass="content"><spanclass="timecode">44:11</span>Read about Machine Interrupt Registers, including the mie (machine interrupt-enable) register</div>
<divclass="progress faded">
<divclass="content"><spanclass="timecode">44:11</span>Read about Machine Interrupt Registers, including the mie (machine interrupt-enable) register</div>
</div>
<divclass="progress main">
<divclass="content"><spanclass="timecode">44:11</span>Read about Machine Interrupt Registers, including the mie (machine interrupt-enable) register</div>
</div>
</div>
<divclass="marker"data-timestamp="2966">
<divclass="content"><spanclass="timecode">49:26</span>Note how common it is in plic_driver.c for us to compute an address of a memory mapped register in order to mess with interrupts</div>
<divclass="progress faded">
<divclass="content"><spanclass="timecode">49:26</span>Note how common it is in plic_driver.c for us to compute an address of a memory mapped register in order to mess with interrupts</div>
</div>
<divclass="progress main">
<divclass="content"><spanclass="timecode">49:26</span>Note how common it is in plic_driver.c for us to compute an address of a memory mapped register in order to mess with interrupts</div>
</div>
</div>
<divclass="marker"data-timestamp="3105">
<divclass="content"><spanclass="timecode">51:45</span>A few words on the sponge mode that we're in</div>
<divclass="progress faded">
<divclass="content"><spanclass="timecode">51:45</span>A few words on the sponge mode that we're in</div>
</div>
<divclass="progress main">
<divclass="content"><spanclass="timecode">51:45</span>A few words on the sponge mode that we're in</div>
</div>
</div>
<divclass="marker"data-timestamp="3170">
<divclass="content"><spanclass="timecode">52:50</span>Continue reading about the Machine Interrupt Registers</div>
<divclass="progress faded">
<divclass="content"><spanclass="timecode">52:50</span>Continue reading about the Machine Interrupt Registers</div>
</div>
<divclass="progress main">
<divclass="content"><spanclass="timecode">52:50</span>Continue reading about the Machine Interrupt Registers</div>
</div>
</div>
<divclass="marker"data-timestamp="3513">
<divclass="content"><spanclass="timecode">58:33</span>Return to demo_gpio.c and come to understand the clear_csr() calls in relation to the documentation</div>
<divclass="progress faded">
<divclass="content"><spanclass="timecode">58:33</span>Return to demo_gpio.c and come to understand the clear_csr() calls in relation to the documentation</div>
</div>
<divclass="progress main">
<divclass="content"><spanclass="timecode">58:33</span>Return to demo_gpio.c and come to understand the clear_csr() calls in relation to the documentation</div>
</div>
</div>
<divclass="marker"data-timestamp="4008">
<divclass="content"><spanclass="timecode">1:06:48</span>We're out of time for today</div>
<divclass="progress faded">
<divclass="content"><spanclass="timecode">1:06:48</span>We're out of time for today</div>
</div>
<divclass="progress main">
<divclass="content"><spanclass="timecode">1:06:48</span>We're out of time for today</div>
</div>
</div>
</div>
</div>
<script>
var player = new Player(document.querySelector(".player_container"), onRefChanged);