1
0
mirror of https://gitlab.com/camelot/kickc.git synced 2025-04-08 14:37:40 +00:00

Finished better ASM fragment handling for pointer to pointer. Closes #484

This commit is contained in:
jespergravgaard 2020-07-01 23:38:56 +02:00
parent 7f6b0a0e89
commit 4149381b74
58 changed files with 369 additions and 369 deletions

View File

@ -2167,7 +2167,7 @@ init_irq: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [68] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_pptc1=pprc2
// [68] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta HARDWARE_IRQ
@ -2910,7 +2910,7 @@ init_irq: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [68] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_pptc1=pprc2
// [68] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta HARDWARE_IRQ
@ -3794,7 +3794,7 @@ init_irq: {
lda #IRQ_RASTER
sta IRQ_ENABLE
// *HARDWARE_IRQ = &irq
// [68] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_pptc1=pprc2
// [68] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta HARDWARE_IRQ

View File

@ -4683,7 +4683,7 @@ init_irq: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [107] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_pptc1=pprc2
// [107] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta HARDWARE_IRQ
@ -6911,7 +6911,7 @@ init_irq: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [107] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_pptc1=pprc2
// [107] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta HARDWARE_IRQ
@ -9191,7 +9191,7 @@ init_irq: {
lda #IRQ_RASTER
sta IRQ_ENABLE
// *HARDWARE_IRQ = &irq
// [107] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_pptc1=pprc2
// [107] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta HARDWARE_IRQ

View File

@ -4937,7 +4937,7 @@ init_irq: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [116] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_pptc1=pprc2
// [116] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta HARDWARE_IRQ
@ -7252,7 +7252,7 @@ init_irq: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [116] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_pptc1=pprc2
// [116] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta HARDWARE_IRQ
@ -9620,7 +9620,7 @@ init_irq: {
lda #IRQ_RASTER
sta IRQ_ENABLE
// *HARDWARE_IRQ = &irq
// [116] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_pptc1=pprc2
// [116] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta HARDWARE_IRQ

View File

@ -202,7 +202,7 @@ main: {
jmp getScreen1
// main::getScreen1
getScreen1:
// [1] (byte*) main::getScreen1_return#0 ← *((const byte**) screens) -- pbuz1=_deref_pptc1
// [1] (byte*) main::getScreen1_return#0 ← *((const byte**) screens) -- pbuz1=_deref_qbuc1
lda screens
sta.z getScreen1_return
lda screens+1
@ -264,7 +264,7 @@ main: {
jmp getScreen1
// main::getScreen1
getScreen1:
// [1] (byte*) main::getScreen1_return#0 ← *((const byte**) screens) -- pbuz1=_deref_pptc1
// [1] (byte*) main::getScreen1_return#0 ← *((const byte**) screens) -- pbuz1=_deref_qbuc1
lda screens
sta.z getScreen1_return
lda screens+1
@ -342,7 +342,7 @@ main: {
.label spritePtr1_return = 2
// main::getScreen1
// return screens[id];
// [1] (byte*) main::getScreen1_return#0 ← *((const byte**) screens) -- pbuz1=_deref_pptc1
// [1] (byte*) main::getScreen1_return#0 ← *((const byte**) screens) -- pbuz1=_deref_qbuc1
lda screens
sta.z getScreen1_return
lda screens+1

View File

@ -203,7 +203,7 @@ main: {
jmp getScreen1
// main::getScreen1
getScreen1:
// [1] (byte*) main::getScreen1_return#0 ← *((const byte**) screens) -- pbuz1=_deref_pptc1
// [1] (byte*) main::getScreen1_return#0 ← *((const byte**) screens) -- pbuz1=_deref_qbuc1
lda screens
sta.z getScreen1_return
lda screens+1
@ -270,7 +270,7 @@ main: {
jmp getScreen1
// main::getScreen1
getScreen1:
// [1] (byte*) main::getScreen1_return#0 ← *((const byte**) screens) -- pbuz1=_deref_pptc1
// [1] (byte*) main::getScreen1_return#0 ← *((const byte**) screens) -- pbuz1=_deref_qbuc1
lda screens
sta.z getScreen1_return
lda screens+1
@ -352,7 +352,7 @@ main: {
.label getScreen1_return = 2
// main::getScreen1
// return screens[id];
// [1] (byte*) main::getScreen1_return#0 ← *((const byte**) screens) -- pbuz1=_deref_pptc1
// [1] (byte*) main::getScreen1_return#0 ← *((const byte**) screens) -- pbuz1=_deref_qbuc1
lda screens
sta.z getScreen1_return
lda screens+1

View File

@ -281,7 +281,7 @@ irq: {
}
// main
main: {
// [15] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_pptc1=pprc2
// [15] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq
@ -407,7 +407,7 @@ irq: {
}
// main
main: {
// [15] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_pptc1=pprc2
// [15] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq
@ -554,7 +554,7 @@ irq: {
// main
main: {
// *KERNEL_IRQ = &irq
// [15] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_pptc1=pprc2
// [15] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq

View File

@ -4750,7 +4750,7 @@ irqBottom: {
// Trigger IRQ at the top of the screen
lda #RASTER_IRQ_TOP
sta RASTER
// [13] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_ALL)(void()) irqTop() -- _deref_pptc1=pprc2
// [13] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_ALL)(void()) irqTop() -- _deref_qprc1=pprc2
lda #<irqTop
sta HARDWARE_IRQ
lda #>irqTop
@ -4785,7 +4785,7 @@ irqTop: {
// Trigger IRQ at the middle of the screen
lda #RASTER_IRQ_MIDDLE
sta RASTER
// [18] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_ALL)(void()) irqBottom() -- _deref_pptc1=pprc2
// [18] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_ALL)(void()) irqBottom() -- _deref_qprc1=pprc2
lda #<irqBottom
sta HARDWARE_IRQ
lda #>irqBottom
@ -5130,7 +5130,7 @@ processChars: {
jmp __b11
// processChars::@11
__b11:
// [71] *(*((byte**)(struct ProcessingSprite*) processChars::processing#0 + (const byte) OFFSET_STRUCT_PROCESSINGSPRITE_SCREENPTR)) ← (byte) ' ' -- _deref_(pptz1_derefidx_vbuc1)=vbuc2
// [71] *(*((byte**)(struct ProcessingSprite*) processChars::processing#0 + (const byte) OFFSET_STRUCT_PROCESSINGSPRITE_SCREENPTR)) ← (byte) ' ' -- _deref_(qbuz1_derefidx_vbuc1)=vbuc2
// Clear the char on the screen
ldx #' '
ldy #OFFSET_STRUCT_PROCESSINGSPRITE_SCREENPTR
@ -5748,7 +5748,7 @@ setupRasterIrq: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [161] *((const nomodify void()**) HARDWARE_IRQ) ← (const void()*) setupRasterIrq::irqRoutine#0 -- _deref_pptc1=pprc2
// [161] *((const nomodify void()**) HARDWARE_IRQ) ← (const void()*) setupRasterIrq::irqRoutine#0 -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irqRoutine
sta HARDWARE_IRQ
@ -6413,7 +6413,7 @@ startProcessing: {
lda #STATUS_NEW
ldy.z __22
sta PROCESSING+OFFSET_STRUCT_PROCESSINGSPRITE_STATUS,y
// [251] *((byte**)(const struct ProcessingSprite*) PROCESSING+(const byte) OFFSET_STRUCT_PROCESSINGSPRITE_SCREENPTR + (byte~) startProcessing::$22) ← (byte*) startProcessing::screenPtr#0 -- pptc1_derefidx_vbuz1=pbuz2
// [251] *((byte**)(const struct ProcessingSprite*) PROCESSING+(const byte) OFFSET_STRUCT_PROCESSINGSPRITE_SCREENPTR + (byte~) startProcessing::$22) ← (byte*) startProcessing::screenPtr#0 -- qbuc1_derefidx_vbuz1=pbuz2
ldy.z __22
lda.z screenPtr
sta PROCESSING+OFFSET_STRUCT_PROCESSINGSPRITE_SCREENPTR,y
@ -7744,7 +7744,7 @@ irqBottom: {
// Trigger IRQ at the top of the screen
lda #RASTER_IRQ_TOP
sta RASTER
// [13] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_ALL)(void()) irqTop() -- _deref_pptc1=pprc2
// [13] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_ALL)(void()) irqTop() -- _deref_qprc1=pprc2
lda #<irqTop
sta HARDWARE_IRQ
lda #>irqTop
@ -7779,7 +7779,7 @@ irqTop: {
// Trigger IRQ at the middle of the screen
lda #RASTER_IRQ_MIDDLE
sta RASTER
// [18] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_ALL)(void()) irqBottom() -- _deref_pptc1=pprc2
// [18] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_ALL)(void()) irqBottom() -- _deref_qprc1=pprc2
lda #<irqBottom
sta HARDWARE_IRQ
lda #>irqBottom
@ -8071,7 +8071,7 @@ processChars: {
jmp __b11
// processChars::@11
__b11:
// [71] *(*((byte**)(struct ProcessingSprite*) processChars::processing#0 + (const byte) OFFSET_STRUCT_PROCESSINGSPRITE_SCREENPTR)) ← (byte) ' ' -- _deref_(pptz1_derefidx_vbuc1)=vbuc2
// [71] *(*((byte**)(struct ProcessingSprite*) processChars::processing#0 + (const byte) OFFSET_STRUCT_PROCESSINGSPRITE_SCREENPTR)) ← (byte) ' ' -- _deref_(qbuz1_derefidx_vbuc1)=vbuc2
// Clear the char on the screen
ldx #' '
ldy #OFFSET_STRUCT_PROCESSINGSPRITE_SCREENPTR
@ -8633,7 +8633,7 @@ setupRasterIrq: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [161] *((const nomodify void()**) HARDWARE_IRQ) ← (const void()*) setupRasterIrq::irqRoutine#0 -- _deref_pptc1=pprc2
// [161] *((const nomodify void()**) HARDWARE_IRQ) ← (const void()*) setupRasterIrq::irqRoutine#0 -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irqRoutine
sta HARDWARE_IRQ
@ -9208,7 +9208,7 @@ startProcessing: {
// [250] *((byte*)(const struct ProcessingSprite*) PROCESSING+(const byte) OFFSET_STRUCT_PROCESSINGSPRITE_STATUS + (byte~) startProcessing::$22) ← (const byte) STATUS_NEW -- pbuc1_derefidx_vbuxx=vbuc2
lda #STATUS_NEW
sta PROCESSING+OFFSET_STRUCT_PROCESSINGSPRITE_STATUS,x
// [251] *((byte**)(const struct ProcessingSprite*) PROCESSING+(const byte) OFFSET_STRUCT_PROCESSINGSPRITE_SCREENPTR + (byte~) startProcessing::$22) ← (byte*) startProcessing::screenPtr#0 -- pptc1_derefidx_vbuxx=pbuz1
// [251] *((byte**)(const struct ProcessingSprite*) PROCESSING+(const byte) OFFSET_STRUCT_PROCESSINGSPRITE_SCREENPTR + (byte~) startProcessing::$22) ← (byte*) startProcessing::screenPtr#0 -- qbuc1_derefidx_vbuxx=pbuz1
lda.z screenPtr
sta PROCESSING+OFFSET_STRUCT_PROCESSINGSPRITE_SCREENPTR,x
lda.z screenPtr+1
@ -10631,7 +10631,7 @@ irqBottom: {
lda #RASTER_IRQ_TOP
sta RASTER
// *HARDWARE_IRQ = &irqTop
// [13] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_ALL)(void()) irqTop() -- _deref_pptc1=pprc2
// [13] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_ALL)(void()) irqTop() -- _deref_qprc1=pprc2
lda #<irqTop
sta HARDWARE_IRQ
lda #>irqTop
@ -10666,7 +10666,7 @@ irqTop: {
lda #RASTER_IRQ_MIDDLE
sta RASTER
// *HARDWARE_IRQ = &irqBottom
// [18] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_ALL)(void()) irqBottom() -- _deref_pptc1=pprc2
// [18] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_ALL)(void()) irqBottom() -- _deref_qprc1=pprc2
lda #<irqBottom
sta HARDWARE_IRQ
lda #>irqBottom
@ -10946,7 +10946,7 @@ processChars: {
bne __b3
// processChars::@11
// *(processing->screenPtr) = ' '
// [71] *(*((byte**)(struct ProcessingSprite*) processChars::processing#0 + (const byte) OFFSET_STRUCT_PROCESSINGSPRITE_SCREENPTR)) ← (byte) ' ' -- _deref_(pptz1_derefidx_vbuc1)=vbuc2
// [71] *(*((byte**)(struct ProcessingSprite*) processChars::processing#0 + (const byte) OFFSET_STRUCT_PROCESSINGSPRITE_SCREENPTR)) ← (byte) ' ' -- _deref_(qbuz1_derefidx_vbuc1)=vbuc2
// Clear the char on the screen
ldx #' '
ldy #OFFSET_STRUCT_PROCESSINGSPRITE_SCREENPTR
@ -11544,7 +11544,7 @@ setupRasterIrq: {
lda #IRQ_RASTER
sta IRQ_ENABLE
// *HARDWARE_IRQ = irqRoutine
// [161] *((const nomodify void()**) HARDWARE_IRQ) ← (const void()*) setupRasterIrq::irqRoutine#0 -- _deref_pptc1=pprc2
// [161] *((const nomodify void()**) HARDWARE_IRQ) ← (const void()*) setupRasterIrq::irqRoutine#0 -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irqRoutine
sta HARDWARE_IRQ
@ -12127,7 +12127,7 @@ startProcessing: {
// [250] *((byte*)(const struct ProcessingSprite*) PROCESSING+(const byte) OFFSET_STRUCT_PROCESSINGSPRITE_STATUS + (byte~) startProcessing::$22) ← (const byte) STATUS_NEW -- pbuc1_derefidx_vbuxx=vbuc2
lda #STATUS_NEW
sta PROCESSING+OFFSET_STRUCT_PROCESSINGSPRITE_STATUS,x
// [251] *((byte**)(const struct ProcessingSprite*) PROCESSING+(const byte) OFFSET_STRUCT_PROCESSINGSPRITE_SCREENPTR + (byte~) startProcessing::$22) ← (byte*) startProcessing::screenPtr#0 -- pptc1_derefidx_vbuxx=pbuz1
// [251] *((byte**)(const struct ProcessingSprite*) PROCESSING+(const byte) OFFSET_STRUCT_PROCESSINGSPRITE_SCREENPTR + (byte~) startProcessing::$22) ← (byte*) startProcessing::screenPtr#0 -- qbuc1_derefidx_vbuxx=pbuz1
lda.z screenPtr
sta PROCESSING+OFFSET_STRUCT_PROCESSINGSPRITE_SCREENPTR,x
lda.z screenPtr+1

View File

@ -4336,7 +4336,7 @@ irq_bottom_2: {
// Trigger IRQ 1 at 8 pixels before the border
lda #BORDER_YPOS_BOTTOM-8
sta VICII+OFFSET_STRUCT_MOS6569_VICII_RASTER
// [18] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_pptc1=pprc2
// [18] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_qprc1=pprc2
lda #<irq_bottom_1
sta KERNEL_IRQ
lda #>irq_bottom_1
@ -4382,7 +4382,7 @@ irq_bottom_1: {
// Trigger IRQ 2 at bottom of text-line
lda #BORDER_YPOS_BOTTOM
sta VICII+OFFSET_STRUCT_MOS6569_VICII_RASTER
// [26] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq_bottom_2() -- _deref_pptc1=pprc2
// [26] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq_bottom_2() -- _deref_qprc1=pprc2
lda #<irq_bottom_2
sta KERNEL_IRQ
lda #>irq_bottom_2
@ -4913,7 +4913,7 @@ setup_irq: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta VICII+OFFSET_STRUCT_MOS6569_VICII_IRQ_ENABLE
// [106] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_pptc1=pprc2
// [106] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq_bottom_1
sta KERNEL_IRQ
@ -5160,7 +5160,7 @@ line: {
lda.z plot2___0
asl
sta.z plot2___2
// [146] (byte*) line::plot2_column#0 ← *((const byte**) plot_column + (byte~) line::plot2_$2) -- pbuz1=pptc1_derefidx_vbuz2
// [146] (byte*) line::plot2_column#0 ← *((const byte**) plot_column + (byte~) line::plot2_$2) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z plot2___2
lda plot_column,y
sta.z plot2_column
@ -5215,7 +5215,7 @@ line: {
lda.z plot3___0
asl
sta.z plot3___2
// [155] (byte*) line::plot3_column#0 ← *((const byte**) plot_column + (byte~) line::plot3_$2) -- pbuz1=pptc1_derefidx_vbuz2
// [155] (byte*) line::plot3_column#0 ← *((const byte**) plot_column + (byte~) line::plot3_$2) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z plot3___2
lda plot_column,y
sta.z plot3_column
@ -5249,7 +5249,7 @@ line: {
lda.z plot1___0
asl
sta.z plot1___2
// [161] (byte*) line::plot1_column#0 ← *((const byte**) plot_column + (byte~) line::plot1_$2) -- pbuz1=pptc1_derefidx_vbuz2
// [161] (byte*) line::plot1_column#0 ← *((const byte**) plot_column + (byte~) line::plot1_$2) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z plot1___2
lda plot_column,y
sta.z plot1_column
@ -5330,7 +5330,7 @@ line: {
lda.z plot4___0
asl
sta.z plot4___2
// [174] (byte*) line::plot4_column#0 ← *((const byte**) plot_column + (byte~) line::plot4_$2) -- pbuz1=pptc1_derefidx_vbuz2
// [174] (byte*) line::plot4_column#0 ← *((const byte**) plot_column + (byte~) line::plot4_$2) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z plot4___2
lda plot_column,y
sta.z plot4_column
@ -5383,7 +5383,7 @@ line: {
lda.z plot5___0
asl
sta.z plot5___2
// [182] (byte*) line::plot5_column#0 ← *((const byte**) plot_column + (byte~) line::plot5_$2) -- pbuz1=pptc1_derefidx_vbuz2
// [182] (byte*) line::plot5_column#0 ← *((const byte**) plot_column + (byte~) line::plot5_$2) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z plot5___2
lda plot_column,y
sta.z plot5_column
@ -5455,7 +5455,7 @@ line: {
lda.z plot6___0
asl
sta.z plot6___2
// [194] (byte*) line::plot6_column#0 ← *((const byte**) plot_column + (byte~) line::plot6_$2) -- pbuz1=pptc1_derefidx_vbuz2
// [194] (byte*) line::plot6_column#0 ← *((const byte**) plot_column + (byte~) line::plot6_$2) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z plot6___2
lda plot_column,y
sta.z plot6_column
@ -6307,7 +6307,7 @@ irq_bottom_2: {
// Trigger IRQ 1 at 8 pixels before the border
lda #BORDER_YPOS_BOTTOM-8
sta VICII+OFFSET_STRUCT_MOS6569_VICII_RASTER
// [18] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_pptc1=pprc2
// [18] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_qprc1=pprc2
lda #<irq_bottom_1
sta KERNEL_IRQ
lda #>irq_bottom_1
@ -6353,7 +6353,7 @@ irq_bottom_1: {
// Trigger IRQ 2 at bottom of text-line
lda #BORDER_YPOS_BOTTOM
sta VICII+OFFSET_STRUCT_MOS6569_VICII_RASTER
// [26] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq_bottom_2() -- _deref_pptc1=pprc2
// [26] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq_bottom_2() -- _deref_qprc1=pprc2
lda #<irq_bottom_2
sta KERNEL_IRQ
lda #>irq_bottom_2
@ -6854,7 +6854,7 @@ setup_irq: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta VICII+OFFSET_STRUCT_MOS6569_VICII_IRQ_ENABLE
// [106] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_pptc1=pprc2
// [106] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq_bottom_1
sta KERNEL_IRQ
@ -7065,7 +7065,7 @@ line: {
lsr
// [145] (byte~) line::plot2_$2 ← (byte~) line::plot2_$0 << (byte) 1 -- vbuaa=vbuaa_rol_1
asl
// [146] (byte*) line::plot2_column#0 ← *((const byte**) plot_column + (byte~) line::plot2_$2) -- pbuz1=pptc1_derefidx_vbuaa
// [146] (byte*) line::plot2_column#0 ← *((const byte**) plot_column + (byte~) line::plot2_$2) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda plot_column,y
sta.z plot2_column
@ -7117,7 +7117,7 @@ line: {
lsr
// [154] (byte~) line::plot3_$2 ← (byte~) line::plot3_$0 << (byte) 1 -- vbuaa=vbuaa_rol_1
asl
// [155] (byte*) line::plot3_column#0 ← *((const byte**) plot_column + (byte~) line::plot3_$2) -- pbuz1=pptc1_derefidx_vbuaa
// [155] (byte*) line::plot3_column#0 ← *((const byte**) plot_column + (byte~) line::plot3_$2) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda plot_column,y
sta.z plot3_column
@ -7147,7 +7147,7 @@ line: {
lsr
// [160] (byte~) line::plot1_$2 ← (byte~) line::plot1_$0 << (byte) 1 -- vbuaa=vbuaa_rol_1
asl
// [161] (byte*) line::plot1_column#0 ← *((const byte**) plot_column + (byte~) line::plot1_$2) -- pbuz1=pptc1_derefidx_vbuaa
// [161] (byte*) line::plot1_column#0 ← *((const byte**) plot_column + (byte~) line::plot1_$2) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda plot_column,y
sta.z plot1_column
@ -7224,7 +7224,7 @@ line: {
lsr
// [173] (byte~) line::plot4_$2 ← (byte~) line::plot4_$0 << (byte) 1 -- vbuaa=vbuaa_rol_1
asl
// [174] (byte*) line::plot4_column#0 ← *((const byte**) plot_column + (byte~) line::plot4_$2) -- pbuz1=pptc1_derefidx_vbuaa
// [174] (byte*) line::plot4_column#0 ← *((const byte**) plot_column + (byte~) line::plot4_$2) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda plot_column,y
sta.z plot4_column
@ -7273,7 +7273,7 @@ line: {
lsr
// [181] (byte~) line::plot5_$2 ← (byte~) line::plot5_$0 << (byte) 1 -- vbuaa=vbuaa_rol_1
asl
// [182] (byte*) line::plot5_column#0 ← *((const byte**) plot_column + (byte~) line::plot5_$2) -- pbuz1=pptc1_derefidx_vbuaa
// [182] (byte*) line::plot5_column#0 ← *((const byte**) plot_column + (byte~) line::plot5_$2) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda plot_column,y
sta.z plot5_column
@ -7343,7 +7343,7 @@ line: {
lsr
// [193] (byte~) line::plot6_$2 ← (byte~) line::plot6_$0 << (byte) 1 -- vbuaa=vbuaa_rol_1
asl
// [194] (byte*) line::plot6_column#0 ← *((const byte**) plot_column + (byte~) line::plot6_$2) -- pbuz1=pptc1_derefidx_vbuaa
// [194] (byte*) line::plot6_column#0 ← *((const byte**) plot_column + (byte~) line::plot6_$2) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda plot_column,y
sta.z plot6_column
@ -8406,7 +8406,7 @@ irq_bottom_2: {
lda #BORDER_YPOS_BOTTOM-8
sta VICII+OFFSET_STRUCT_MOS6569_VICII_RASTER
// *KERNEL_IRQ = &irq_bottom_1
// [18] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_pptc1=pprc2
// [18] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_qprc1=pprc2
lda #<irq_bottom_1
sta KERNEL_IRQ
lda #>irq_bottom_1
@ -8452,7 +8452,7 @@ irq_bottom_1: {
lda #BORDER_YPOS_BOTTOM
sta VICII+OFFSET_STRUCT_MOS6569_VICII_RASTER
// *KERNEL_IRQ = &irq_bottom_2
// [26] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq_bottom_2() -- _deref_pptc1=pprc2
// [26] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq_bottom_2() -- _deref_qprc1=pprc2
lda #<irq_bottom_2
sta KERNEL_IRQ
lda #>irq_bottom_2
@ -8937,7 +8937,7 @@ setup_irq: {
lda #IRQ_RASTER
sta VICII+OFFSET_STRUCT_MOS6569_VICII_IRQ_ENABLE
// *KERNEL_IRQ = &irq_bottom_1
// [106] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_pptc1=pprc2
// [106] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq_bottom_1
sta KERNEL_IRQ
@ -9150,7 +9150,7 @@ line: {
// column = plot_column[x/8]
// [145] (byte~) line::plot2_$2 ← (byte~) line::plot2_$0 << (byte) 1 -- vbuaa=vbuaa_rol_1
asl
// [146] (byte*) line::plot2_column#0 ← *((const byte**) plot_column + (byte~) line::plot2_$2) -- pbuz1=pptc1_derefidx_vbuaa
// [146] (byte*) line::plot2_column#0 ← *((const byte**) plot_column + (byte~) line::plot2_$2) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda plot_column,y
sta.z plot2_column
@ -9202,7 +9202,7 @@ line: {
// column = plot_column[x/8]
// [154] (byte~) line::plot3_$2 ← (byte~) line::plot3_$0 << (byte) 1 -- vbuaa=vbuaa_rol_1
asl
// [155] (byte*) line::plot3_column#0 ← *((const byte**) plot_column + (byte~) line::plot3_$2) -- pbuz1=pptc1_derefidx_vbuaa
// [155] (byte*) line::plot3_column#0 ← *((const byte**) plot_column + (byte~) line::plot3_$2) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda plot_column,y
sta.z plot3_column
@ -9234,7 +9234,7 @@ line: {
// column = plot_column[x/8]
// [160] (byte~) line::plot1_$2 ← (byte~) line::plot1_$0 << (byte) 1 -- vbuaa=vbuaa_rol_1
asl
// [161] (byte*) line::plot1_column#0 ← *((const byte**) plot_column + (byte~) line::plot1_$2) -- pbuz1=pptc1_derefidx_vbuaa
// [161] (byte*) line::plot1_column#0 ← *((const byte**) plot_column + (byte~) line::plot1_$2) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda plot_column,y
sta.z plot1_column
@ -9311,7 +9311,7 @@ line: {
// column = plot_column[x/8]
// [173] (byte~) line::plot4_$2 ← (byte~) line::plot4_$0 << (byte) 1 -- vbuaa=vbuaa_rol_1
asl
// [174] (byte*) line::plot4_column#0 ← *((const byte**) plot_column + (byte~) line::plot4_$2) -- pbuz1=pptc1_derefidx_vbuaa
// [174] (byte*) line::plot4_column#0 ← *((const byte**) plot_column + (byte~) line::plot4_$2) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda plot_column,y
sta.z plot4_column
@ -9358,7 +9358,7 @@ line: {
// column = plot_column[x/8]
// [181] (byte~) line::plot5_$2 ← (byte~) line::plot5_$0 << (byte) 1 -- vbuaa=vbuaa_rol_1
asl
// [182] (byte*) line::plot5_column#0 ← *((const byte**) plot_column + (byte~) line::plot5_$2) -- pbuz1=pptc1_derefidx_vbuaa
// [182] (byte*) line::plot5_column#0 ← *((const byte**) plot_column + (byte~) line::plot5_$2) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda plot_column,y
sta.z plot5_column
@ -9428,7 +9428,7 @@ line: {
// column = plot_column[x/8]
// [193] (byte~) line::plot6_$2 ← (byte~) line::plot6_$0 << (byte) 1 -- vbuaa=vbuaa_rol_1
asl
// [194] (byte*) line::plot6_column#0 ← *((const byte**) plot_column + (byte~) line::plot6_$2) -- pbuz1=pptc1_derefidx_vbuaa
// [194] (byte*) line::plot6_column#0 ← *((const byte**) plot_column + (byte~) line::plot6_$2) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda plot_column,y
sta.z plot6_column

View File

@ -4727,7 +4727,7 @@ main: {
// [17] phi (byte) main::col#5 = (byte) 0 [phi:main::@13->main::@4#0] -- vbuz1=vbuc1
lda #0
sta.z col
// [17] phi (byte**) renderBobCleanupNext#23 = (const byte**) RENDERBOB_CLEANUP [phi:main::@13->main::@4#1] -- pptz1=pptc1
// [17] phi (byte**) renderBobCleanupNext#23 = (const byte**) RENDERBOB_CLEANUP [phi:main::@13->main::@4#1] -- qbuz1=qbuc1
lda #<RENDERBOB_CLEANUP
sta.z renderBobCleanupNext
lda #>RENDERBOB_CLEANUP
@ -5479,7 +5479,7 @@ renderBobInit: {
lda.z i
asl
sta.z __4
// [121] *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobInit::$4) ← (const nomodify byte*) BOB_SCREEN -- pptc1_derefidx_vbuz1=pbuc2
// [121] *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobInit::$4) ← (const nomodify byte*) BOB_SCREEN -- qbuc1_derefidx_vbuz1=pbuc2
ldy.z __4
lda #<BOB_SCREEN
sta RENDERBOB_CLEANUP,y
@ -5565,7 +5565,7 @@ renderBobCleanup: {
lda.z i
asl
sta.z __1
// [134] (byte*) renderBobCleanup::screen#0 ← *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobCleanup::$1) -- pbuz1=pptc1_derefidx_vbuz2
// [134] (byte*) renderBobCleanup::screen#0 ← *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobCleanup::$1) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z __1
lda RENDERBOB_CLEANUP,y
sta.z screen
@ -5692,14 +5692,14 @@ renderBob: {
clc
adc.z __6
sta.z bob_table_idx
// [157] *((byte**) renderBobCleanupNext#19) ← (byte*) renderBob::screen#0 -- _deref_pptz1=pbuz2
// [157] *((byte**) renderBobCleanupNext#19) ← (byte*) renderBob::screen#0 -- _deref_qbuz1=pbuz2
ldy #0
lda.z screen
sta (renderBobCleanupNext),y
iny
lda.z screen+1
sta (renderBobCleanupNext),y
// [158] (byte**) renderBobCleanupNext#14 ← (byte**) renderBobCleanupNext#19 + (const byte) SIZEOF_POINTER -- pptz1=pptz1_plus_vbuc1
// [158] (byte**) renderBobCleanupNext#14 ← (byte**) renderBobCleanupNext#19 + (const byte) SIZEOF_POINTER -- qbuz1=qbuz1_plus_vbuc1
lda #SIZEOF_POINTER
clc
adc.z renderBobCleanupNext
@ -6806,7 +6806,7 @@ main: {
// [17] phi (byte) main::col#5 = (byte) 0 [phi:main::@13->main::@4#0] -- vbuz1=vbuc1
lda #0
sta.z col
// [17] phi (byte**) renderBobCleanupNext#23 = (const byte**) RENDERBOB_CLEANUP [phi:main::@13->main::@4#1] -- pptz1=pptc1
// [17] phi (byte**) renderBobCleanupNext#23 = (const byte**) RENDERBOB_CLEANUP [phi:main::@13->main::@4#1] -- qbuz1=qbuc1
lda #<RENDERBOB_CLEANUP
sta.z renderBobCleanupNext
lda #>RENDERBOB_CLEANUP
@ -7505,7 +7505,7 @@ renderBobInit: {
// [120] (byte~) renderBobInit::$4 ← (byte) renderBobInit::i#2 << (byte) 1 -- vbuaa=vbuxx_rol_1
txa
asl
// [121] *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobInit::$4) ← (const nomodify byte*) BOB_SCREEN -- pptc1_derefidx_vbuaa=pbuc2
// [121] *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobInit::$4) ← (const nomodify byte*) BOB_SCREEN -- qbuc1_derefidx_vbuaa=pbuc2
tay
lda #<BOB_SCREEN
sta RENDERBOB_CLEANUP,y
@ -7586,7 +7586,7 @@ renderBobCleanup: {
// [133] (byte~) renderBobCleanup::$1 ← (byte) renderBobCleanup::i#2 << (byte) 1 -- vbuaa=vbuxx_rol_1
txa
asl
// [134] (byte*) renderBobCleanup::screen#0 ← *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobCleanup::$1) -- pbuz1=pptc1_derefidx_vbuaa
// [134] (byte*) renderBobCleanup::screen#0 ← *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobCleanup::$1) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda RENDERBOB_CLEANUP,y
sta.z screen
@ -7701,14 +7701,14 @@ renderBob: {
clc
adc.z bob_table_idx
sta.z bob_table_idx
// [157] *((byte**) renderBobCleanupNext#19) ← (byte*) renderBob::screen#0 -- _deref_pptz1=pbuz2
// [157] *((byte**) renderBobCleanupNext#19) ← (byte*) renderBob::screen#0 -- _deref_qbuz1=pbuz2
ldy #0
lda.z screen
sta (renderBobCleanupNext),y
iny
lda.z screen+1
sta (renderBobCleanupNext),y
// [158] (byte**) renderBobCleanupNext#14 ← (byte**) renderBobCleanupNext#19 + (const byte) SIZEOF_POINTER -- pptz1=pptz1_plus_vbuc1
// [158] (byte**) renderBobCleanupNext#14 ← (byte**) renderBobCleanupNext#19 + (const byte) SIZEOF_POINTER -- qbuz1=qbuz1_plus_vbuc1
lda #SIZEOF_POINTER
clc
adc.z renderBobCleanupNext
@ -9057,7 +9057,7 @@ main: {
// [17] phi (byte) main::col#5 = (byte) 0 [phi:main::@13->main::@4#0] -- vbuz1=vbuc1
lda #0
sta.z col
// [17] phi (byte**) renderBobCleanupNext#23 = (const byte**) RENDERBOB_CLEANUP [phi:main::@13->main::@4#1] -- pptz1=pptc1
// [17] phi (byte**) renderBobCleanupNext#23 = (const byte**) RENDERBOB_CLEANUP [phi:main::@13->main::@4#1] -- qbuz1=qbuc1
lda #<RENDERBOB_CLEANUP
sta.z renderBobCleanupNext
lda #>RENDERBOB_CLEANUP
@ -9718,7 +9718,7 @@ renderBobInit: {
// [120] (byte~) renderBobInit::$4 ← (byte) renderBobInit::i#2 << (byte) 1 -- vbuaa=vbuxx_rol_1
txa
asl
// [121] *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobInit::$4) ← (const nomodify byte*) BOB_SCREEN -- pptc1_derefidx_vbuaa=pbuc2
// [121] *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobInit::$4) ← (const nomodify byte*) BOB_SCREEN -- qbuc1_derefidx_vbuaa=pbuc2
tay
lda #<BOB_SCREEN
sta RENDERBOB_CLEANUP,y
@ -9795,7 +9795,7 @@ renderBobCleanup: {
// [133] (byte~) renderBobCleanup::$1 ← (byte) renderBobCleanup::i#2 << (byte) 1 -- vbuaa=vbuxx_rol_1
txa
asl
// [134] (byte*) renderBobCleanup::screen#0 ← *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobCleanup::$1) -- pbuz1=pptc1_derefidx_vbuaa
// [134] (byte*) renderBobCleanup::screen#0 ← *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobCleanup::$1) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda RENDERBOB_CLEANUP,y
sta.z screen
@ -9921,7 +9921,7 @@ renderBob: {
adc.z bob_table_idx
sta.z bob_table_idx
// *renderBobCleanupNext++ = screen
// [157] *((byte**) renderBobCleanupNext#19) ← (byte*) renderBob::screen#0 -- _deref_pptz1=pbuz2
// [157] *((byte**) renderBobCleanupNext#19) ← (byte*) renderBob::screen#0 -- _deref_qbuz1=pbuz2
ldy #0
lda.z screen
sta (renderBobCleanupNext),y
@ -9929,7 +9929,7 @@ renderBob: {
lda.z screen+1
sta (renderBobCleanupNext),y
// *renderBobCleanupNext++ = screen;
// [158] (byte**) renderBobCleanupNext#14 ← (byte**) renderBobCleanupNext#19 + (const byte) SIZEOF_POINTER -- pptz1=pptz1_plus_vbuc1
// [158] (byte**) renderBobCleanupNext#14 ← (byte**) renderBobCleanupNext#19 + (const byte) SIZEOF_POINTER -- qbuz1=qbuz1_plus_vbuc1
lda #SIZEOF_POINTER
clc
adc.z renderBobCleanupNext

View File

@ -5075,7 +5075,7 @@ main: {
// [17] phi (byte) main::i#2 = (byte) 0 [phi:main::@11->main::@4#0] -- vbuz1=vbuc1
lda #0
sta.z i
// [17] phi (byte**) renderBobCleanupNext#19 = (const byte**) RENDERBOB_CLEANUP [phi:main::@11->main::@4#1] -- pptz1=pptc1
// [17] phi (byte**) renderBobCleanupNext#19 = (const byte**) RENDERBOB_CLEANUP [phi:main::@11->main::@4#1] -- qbuz1=qbuc1
lda #<RENDERBOB_CLEANUP
sta.z renderBobCleanupNext
lda #>RENDERBOB_CLEANUP
@ -5826,7 +5826,7 @@ renderBobInit: {
lda.z i
asl
sta.z __4
// [126] *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobInit::$4) ← (const nomodify byte*) BOB_SCREEN -- pptc1_derefidx_vbuz1=pbuc2
// [126] *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobInit::$4) ← (const nomodify byte*) BOB_SCREEN -- qbuc1_derefidx_vbuz1=pbuc2
ldy.z __4
lda #<BOB_SCREEN
sta RENDERBOB_CLEANUP,y
@ -5912,7 +5912,7 @@ renderBobCleanup: {
lda.z i
asl
sta.z __1
// [139] (byte*) renderBobCleanup::screen#0 ← *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobCleanup::$1) -- pbuz1=pptc1_derefidx_vbuz2
// [139] (byte*) renderBobCleanup::screen#0 ← *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobCleanup::$1) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z __1
lda RENDERBOB_CLEANUP,y
sta.z screen
@ -6079,14 +6079,14 @@ renderBob: {
clc
adc.z __6
sta.z bob_table_idx
// [169] *((byte**) renderBobCleanupNext#19) ← (byte*) renderBob::screen#0 -- _deref_pptz1=pbuz2
// [169] *((byte**) renderBobCleanupNext#19) ← (byte*) renderBob::screen#0 -- _deref_qbuz1=pbuz2
ldy #0
lda.z screen
sta (renderBobCleanupNext),y
iny
lda.z screen+1
sta (renderBobCleanupNext),y
// [170] (byte**) renderBobCleanupNext#14 ← (byte**) renderBobCleanupNext#19 + (const byte) SIZEOF_POINTER -- pptz1=pptz1_plus_vbuc1
// [170] (byte**) renderBobCleanupNext#14 ← (byte**) renderBobCleanupNext#19 + (const byte) SIZEOF_POINTER -- qbuz1=qbuz1_plus_vbuc1
lda #SIZEOF_POINTER
clc
adc.z renderBobCleanupNext
@ -7529,7 +7529,7 @@ main: {
// [17] phi (byte) main::i#2 = (byte) 0 [phi:main::@11->main::@4#0] -- vbuz1=vbuc1
lda #0
sta.z i
// [17] phi (byte**) renderBobCleanupNext#19 = (const byte**) RENDERBOB_CLEANUP [phi:main::@11->main::@4#1] -- pptz1=pptc1
// [17] phi (byte**) renderBobCleanupNext#19 = (const byte**) RENDERBOB_CLEANUP [phi:main::@11->main::@4#1] -- qbuz1=qbuc1
lda #<RENDERBOB_CLEANUP
sta.z renderBobCleanupNext
lda #>RENDERBOB_CLEANUP
@ -8205,7 +8205,7 @@ renderBobInit: {
// [125] (byte~) renderBobInit::$4 ← (byte) renderBobInit::i#2 << (byte) 1 -- vbuaa=vbuxx_rol_1
txa
asl
// [126] *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobInit::$4) ← (const nomodify byte*) BOB_SCREEN -- pptc1_derefidx_vbuaa=pbuc2
// [126] *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobInit::$4) ← (const nomodify byte*) BOB_SCREEN -- qbuc1_derefidx_vbuaa=pbuc2
tay
lda #<BOB_SCREEN
sta RENDERBOB_CLEANUP,y
@ -8286,7 +8286,7 @@ renderBobCleanup: {
// [138] (byte~) renderBobCleanup::$1 ← (byte) renderBobCleanup::i#2 << (byte) 1 -- vbuaa=vbuxx_rol_1
txa
asl
// [139] (byte*) renderBobCleanup::screen#0 ← *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobCleanup::$1) -- pbuz1=pptc1_derefidx_vbuaa
// [139] (byte*) renderBobCleanup::screen#0 ← *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobCleanup::$1) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda RENDERBOB_CLEANUP,y
sta.z screen
@ -8427,14 +8427,14 @@ renderBob: {
clc
adc.z __5
tax
// [169] *((byte**) renderBobCleanupNext#19) ← (byte*) renderBob::screen#0 -- _deref_pptz1=pbuz2
// [169] *((byte**) renderBobCleanupNext#19) ← (byte*) renderBob::screen#0 -- _deref_qbuz1=pbuz2
ldy #0
lda.z screen
sta (renderBobCleanupNext),y
iny
lda.z screen+1
sta (renderBobCleanupNext),y
// [170] (byte**) renderBobCleanupNext#14 ← (byte**) renderBobCleanupNext#19 + (const byte) SIZEOF_POINTER -- pptz1=pptz1_plus_vbuc1
// [170] (byte**) renderBobCleanupNext#14 ← (byte**) renderBobCleanupNext#19 + (const byte) SIZEOF_POINTER -- qbuz1=qbuz1_plus_vbuc1
lda #SIZEOF_POINTER
clc
adc.z renderBobCleanupNext
@ -9978,7 +9978,7 @@ main: {
// [17] phi (byte) main::i#2 = (byte) 0 [phi:main::@11->main::@4#0] -- vbuz1=vbuc1
lda #0
sta.z i
// [17] phi (byte**) renderBobCleanupNext#19 = (const byte**) RENDERBOB_CLEANUP [phi:main::@11->main::@4#1] -- pptz1=pptc1
// [17] phi (byte**) renderBobCleanupNext#19 = (const byte**) RENDERBOB_CLEANUP [phi:main::@11->main::@4#1] -- qbuz1=qbuc1
lda #<RENDERBOB_CLEANUP
sta.z renderBobCleanupNext
lda #>RENDERBOB_CLEANUP
@ -10619,7 +10619,7 @@ renderBobInit: {
// [125] (byte~) renderBobInit::$4 ← (byte) renderBobInit::i#2 << (byte) 1 -- vbuaa=vbuxx_rol_1
txa
asl
// [126] *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobInit::$4) ← (const nomodify byte*) BOB_SCREEN -- pptc1_derefidx_vbuaa=pbuc2
// [126] *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobInit::$4) ← (const nomodify byte*) BOB_SCREEN -- qbuc1_derefidx_vbuaa=pbuc2
tay
lda #<BOB_SCREEN
sta RENDERBOB_CLEANUP,y
@ -10696,7 +10696,7 @@ renderBobCleanup: {
// [138] (byte~) renderBobCleanup::$1 ← (byte) renderBobCleanup::i#2 << (byte) 1 -- vbuaa=vbuxx_rol_1
txa
asl
// [139] (byte*) renderBobCleanup::screen#0 ← *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobCleanup::$1) -- pbuz1=pptc1_derefidx_vbuaa
// [139] (byte*) renderBobCleanup::screen#0 ← *((const byte**) RENDERBOB_CLEANUP + (byte~) renderBobCleanup::$1) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda RENDERBOB_CLEANUP,y
sta.z screen
@ -10843,7 +10843,7 @@ renderBob: {
adc.z __5
tax
// *renderBobCleanupNext++ = screen
// [169] *((byte**) renderBobCleanupNext#19) ← (byte*) renderBob::screen#0 -- _deref_pptz1=pbuz2
// [169] *((byte**) renderBobCleanupNext#19) ← (byte*) renderBob::screen#0 -- _deref_qbuz1=pbuz2
ldy #0
lda.z screen
sta (renderBobCleanupNext),y
@ -10851,7 +10851,7 @@ renderBob: {
lda.z screen+1
sta (renderBobCleanupNext),y
// *renderBobCleanupNext++ = screen;
// [170] (byte**) renderBobCleanupNext#14 ← (byte**) renderBobCleanupNext#19 + (const byte) SIZEOF_POINTER -- pptz1=pptz1_plus_vbuc1
// [170] (byte**) renderBobCleanupNext#14 ← (byte**) renderBobCleanupNext#19 + (const byte) SIZEOF_POINTER -- qbuz1=qbuz1_plus_vbuc1
lda #SIZEOF_POINTER
clc
adc.z renderBobCleanupNext

View File

@ -3903,7 +3903,7 @@ main: {
// Acknowledge any IRQ
lda #IRQ_RASTER
sta IRQ_STATUS
// [52] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) plex_irq() -- _deref_pptc1=pprc2
// [52] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) plex_irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<plex_irq
sta KERNEL_IRQ
@ -5807,7 +5807,7 @@ main: {
// Acknowledge any IRQ
lda #IRQ_RASTER
sta IRQ_STATUS
// [52] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) plex_irq() -- _deref_pptc1=pprc2
// [52] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) plex_irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<plex_irq
sta KERNEL_IRQ
@ -7729,7 +7729,7 @@ main: {
// Acknowledge any IRQ
sta IRQ_STATUS
// *KERNEL_IRQ = &plex_irq
// [52] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) plex_irq() -- _deref_pptc1=pprc2
// [52] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) plex_irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<plex_irq
sta KERNEL_IRQ

View File

@ -2209,7 +2209,7 @@ sprites_irq_init: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [96] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() -- _deref_pptc1=pprc2
// [96] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<sprites_irq
sta HARDWARE_IRQ
@ -3044,7 +3044,7 @@ sprites_irq_init: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [96] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() -- _deref_pptc1=pprc2
// [96] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<sprites_irq
sta HARDWARE_IRQ
@ -4045,7 +4045,7 @@ sprites_irq_init: {
lda #IRQ_RASTER
sta IRQ_ENABLE
// *HARDWARE_IRQ = &sprites_irq
// [96] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() -- _deref_pptc1=pprc2
// [96] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<sprites_irq
sta HARDWARE_IRQ

View File

@ -12088,7 +12088,7 @@ main: {
// [69] (byte) current_xpos#118 ← (byte) current_xpos#100 -- vbuz1=vbuz2
lda.z current_xpos
sta.z current_xpos_1
// [70] (byte*) current_piece_gfx#111 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=pptc1_derefidx_vbuz2
// [70] (byte*) current_piece_gfx#111 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z play_spawn_current.__7
lda PIECES,y
sta.z current_piece_gfx_1
@ -12125,13 +12125,13 @@ main: {
jmp __b17
// main::@17
__b17:
// [75] (byte*) current_piece#103 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=pptc1_derefidx_vbuz2
// [75] (byte*) current_piece#103 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z play_spawn_current.__7
lda PIECES,y
sta.z current_piece
lda PIECES+1,y
sta.z current_piece+1
// [76] (byte*) current_piece_gfx#122 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=pptc1_derefidx_vbuz2
// [76] (byte*) current_piece_gfx#122 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z play_spawn_current.__7
lda PIECES,y
sta.z current_piece_gfx
@ -12443,13 +12443,13 @@ render_init: {
lda.z i
asl
sta.z __5
// [124] *((const byte**) screen_lines_1 + (byte~) render_init::$5) ← (byte*) render_init::li_1#2 -- pptc1_derefidx_vbuz1=pbuz2
// [124] *((const byte**) screen_lines_1 + (byte~) render_init::$5) ← (byte*) render_init::li_1#2 -- qbuc1_derefidx_vbuz1=pbuz2
ldy.z __5
lda.z li_1
sta screen_lines_1,y
lda.z li_1+1
sta screen_lines_1+1,y
// [125] *((const byte**) screen_lines_2 + (byte~) render_init::$5) ← (byte*) render_init::li_2#2 -- pptc1_derefidx_vbuz1=pbuz2
// [125] *((const byte**) screen_lines_2 + (byte~) render_init::$5) ← (byte*) render_init::li_2#2 -- qbuc1_derefidx_vbuz1=pbuz2
ldy.z __5
lda.z li_2
sta screen_lines_2,y
@ -12579,7 +12579,7 @@ sprites_irq_init: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [152] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() -- _deref_pptc1=pprc2
// [152] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<sprites_irq
sta HARDWARE_IRQ
@ -12629,7 +12629,7 @@ play_init: {
lda.z j
asl
sta.z __2
// [158] *((const byte**) playfield_lines + (byte~) play_init::$2) ← (byte*) play_init::pli#2 -- pptc1_derefidx_vbuz1=pbuz2
// [158] *((const byte**) playfield_lines + (byte~) play_init::$2) ← (byte*) play_init::pli#2 -- qbuc1_derefidx_vbuz1=pbuz2
ldy.z __2
lda.z pli
sta playfield_lines,y
@ -12744,7 +12744,7 @@ play_spawn_current: {
// [179] (byte) play_collision::ypos#4 ← (byte) current_ypos#5 -- vbuz1=vbuz2
lda.z current_ypos
sta.z play_collision.ypos
// [180] (byte*) current_piece#102 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=pptc1_derefidx_vbuz2
// [180] (byte*) current_piece#102 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z __7
lda PIECES,y
sta.z current_piece_1
@ -12859,7 +12859,7 @@ render_playfield: {
lda.z __0
asl
sta.z __3
// [196] (byte*) render_playfield::screen_line#0 ← *((const byte**) screen_lines_1 + (byte~) render_playfield::$3) -- pbuz1=pptc1_derefidx_vbuz2
// [196] (byte*) render_playfield::screen_line#0 ← *((const byte**) screen_lines_1 + (byte~) render_playfield::$3) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z __3
lda screen_lines_1,y
sta.z screen_line
@ -12990,7 +12990,7 @@ render_moving: {
lda.z __1
asl
sta.z __6
// [218] (byte*) render_moving::screen_line#0 ← *((const byte**) screen_lines_1 + (byte~) render_moving::$6) -- pbuz1=pptc1_derefidx_vbuz2
// [218] (byte*) render_moving::screen_line#0 ← *((const byte**) screen_lines_1 + (byte~) render_moving::$6) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z __6
lda screen_lines_1,y
sta.z screen_line
@ -13092,7 +13092,7 @@ render_next: {
ldy.z next_piece_idx
lda PIECES_NEXT_CHARS,y
sta.z next_piece_char
// [234] (byte*) render_next::next_piece_gfx#8 ← (byte*)*((const word*) PIECES + (byte~) render_next::$6) -- pbuz1=pptc1_derefidx_vbuz2
// [234] (byte*) render_next::next_piece_gfx#8 ← (byte*)*((const word*) PIECES + (byte~) render_next::$6) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z __6
lda PIECES,y
sta.z next_piece_gfx
@ -14131,7 +14131,7 @@ play_collision: {
lda.z yp
asl
sta.z __14
// [390] (byte*) play_collision::playfield_line#0 ← *((const byte**) playfield_lines + (byte~) play_collision::$14) -- pbuz1=pptc1_derefidx_vbuz2
// [390] (byte*) play_collision::playfield_line#0 ← *((const byte**) playfield_lines + (byte~) play_collision::$14) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z __14
lda playfield_lines,y
sta.z playfield_line
@ -14515,13 +14515,13 @@ play_move_down: {
jmp __b17
// play_move_down::@17
__b17:
// [452] (byte*) current_piece#95 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=pptc1_derefidx_vbuz2
// [452] (byte*) current_piece#95 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z play_spawn_current.__7
lda PIECES,y
sta.z current_piece
lda PIECES+1,y
sta.z current_piece+1
// [453] (byte*) current_piece_gfx#116 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=pptc1_derefidx_vbuz2
// [453] (byte*) current_piece_gfx#116 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z play_spawn_current.__7
lda PIECES,y
sta.z current_piece_gfx
@ -14973,7 +14973,7 @@ play_lock_current: {
lda.z yp
asl
sta.z __4
// [514] (byte*) play_lock_current::playfield_line#0 ← *((const byte**) playfield_lines + (byte~) play_lock_current::$4) -- pbuz1=pptc1_derefidx_vbuz2
// [514] (byte*) play_lock_current::playfield_line#0 ← *((const byte**) playfield_lines + (byte~) play_lock_current::$4) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z __4
lda playfield_lines,y
sta.z playfield_line
@ -17350,7 +17350,7 @@ main: {
// [69] (byte) current_xpos#118 ← (byte) current_xpos#100 -- vbuz1=vbuz2
lda.z current_xpos
sta.z current_xpos_1
// [70] (byte*) current_piece_gfx#111 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=pptc1_derefidx_vbuz2
// [70] (byte*) current_piece_gfx#111 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z play_spawn_current.__7
lda PIECES,y
sta.z current_piece_gfx_1
@ -17385,13 +17385,13 @@ main: {
jmp __b17
// main::@17
__b17:
// [75] (byte*) current_piece#103 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=pptc1_derefidx_vbuz2
// [75] (byte*) current_piece#103 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z play_spawn_current.__7
lda PIECES,y
sta.z current_piece
lda PIECES+1,y
sta.z current_piece+1
// [76] (byte*) current_piece_gfx#122 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=pptc1_derefidx_vbuz2
// [76] (byte*) current_piece_gfx#122 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z play_spawn_current.__7
lda PIECES,y
sta.z current_piece_gfx
@ -17688,12 +17688,12 @@ render_init: {
tya
asl
tax
// [124] *((const byte**) screen_lines_1 + (byte~) render_init::$5) ← (byte*) render_init::li_1#2 -- pptc1_derefidx_vbuxx=pbuz1
// [124] *((const byte**) screen_lines_1 + (byte~) render_init::$5) ← (byte*) render_init::li_1#2 -- qbuc1_derefidx_vbuxx=pbuz1
lda.z li_1
sta screen_lines_1,x
lda.z li_1+1
sta screen_lines_1+1,x
// [125] *((const byte**) screen_lines_2 + (byte~) render_init::$5) ← (byte*) render_init::li_2#2 -- pptc1_derefidx_vbuxx=pbuz1
// [125] *((const byte**) screen_lines_2 + (byte~) render_init::$5) ← (byte*) render_init::li_2#2 -- qbuc1_derefidx_vbuxx=pbuz1
lda.z li_2
sta screen_lines_2,x
lda.z li_2+1
@ -17815,7 +17815,7 @@ sprites_irq_init: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [152] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() -- _deref_pptc1=pprc2
// [152] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<sprites_irq
sta HARDWARE_IRQ
@ -17860,7 +17860,7 @@ play_init: {
tya
asl
tax
// [158] *((const byte**) playfield_lines + (byte~) play_init::$2) ← (byte*) play_init::pli#2 -- pptc1_derefidx_vbuxx=pbuz1
// [158] *((const byte**) playfield_lines + (byte~) play_init::$2) ← (byte*) play_init::pli#2 -- qbuc1_derefidx_vbuxx=pbuz1
lda.z pli
sta playfield_lines,x
lda.z pli+1
@ -17962,7 +17962,7 @@ play_spawn_current: {
// [179] (byte) play_collision::ypos#4 ← (byte) current_ypos#5 -- vbuz1=vbuz2
lda.z current_ypos
sta.z play_collision.ypos
// [180] (byte*) current_piece#102 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=pptc1_derefidx_vbuz2
// [180] (byte*) current_piece#102 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z __7
lda PIECES,y
sta.z current_piece_1
@ -18064,7 +18064,7 @@ render_playfield: {
adc.z l
// [195] (byte~) render_playfield::$3 ← (byte~) render_playfield::$0 << (byte) 1 -- vbuaa=vbuaa_rol_1
asl
// [196] (byte*) render_playfield::screen_line#0 ← *((const byte**) screen_lines_1 + (byte~) render_playfield::$3) -- pbuz1=pptc1_derefidx_vbuaa
// [196] (byte*) render_playfield::screen_line#0 ← *((const byte**) screen_lines_1 + (byte~) render_playfield::$3) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda screen_lines_1,y
sta.z screen_line
@ -18187,7 +18187,7 @@ render_moving: {
adc.z ypos
// [217] (byte~) render_moving::$6 ← (byte~) render_moving::$1 << (byte) 1 -- vbuaa=vbuaa_rol_1
asl
// [218] (byte*) render_moving::screen_line#0 ← *((const byte**) screen_lines_1 + (byte~) render_moving::$6) -- pbuz1=pptc1_derefidx_vbuaa
// [218] (byte*) render_moving::screen_line#0 ← *((const byte**) screen_lines_1 + (byte~) render_moving::$6) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda screen_lines_1,y
sta.z screen_line
@ -18280,7 +18280,7 @@ render_next: {
// [233] (byte) render_next::next_piece_char#0 ← *((const byte*) PIECES_NEXT_CHARS + (byte) next_piece_idx#13) -- vbuz1=pbuc1_derefidx_vbuyy
lda PIECES_NEXT_CHARS,y
sta.z next_piece_char
// [234] (byte*) render_next::next_piece_gfx#8 ← (byte*)*((const word*) PIECES + (byte~) render_next::$6) -- pbuz1=pptc1_derefidx_vbuxx
// [234] (byte*) render_next::next_piece_gfx#8 ← (byte*)*((const word*) PIECES + (byte~) render_next::$6) -- pbuz1=qbuc1_derefidx_vbuxx
lda PIECES,x
sta.z next_piece_gfx
lda PIECES+1,x
@ -19162,7 +19162,7 @@ play_collision: {
// [389] (byte~) play_collision::$14 ← (byte) play_collision::yp#2 << (byte) 1 -- vbuaa=vbuz1_rol_1
lda.z yp
asl
// [390] (byte*) play_collision::playfield_line#0 ← *((const byte**) playfield_lines + (byte~) play_collision::$14) -- pbuz1=pptc1_derefidx_vbuaa
// [390] (byte*) play_collision::playfield_line#0 ← *((const byte**) playfield_lines + (byte~) play_collision::$14) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda playfield_lines,y
sta.z playfield_line
@ -19495,13 +19495,13 @@ play_move_down: {
jmp __b17
// play_move_down::@17
__b17:
// [452] (byte*) current_piece#95 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=pptc1_derefidx_vbuz2
// [452] (byte*) current_piece#95 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z play_spawn_current.__7
lda PIECES,y
sta.z current_piece
lda PIECES+1,y
sta.z current_piece+1
// [453] (byte*) current_piece_gfx#116 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=pptc1_derefidx_vbuz2
// [453] (byte*) current_piece_gfx#116 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z play_spawn_current.__7
lda PIECES,y
sta.z current_piece_gfx
@ -19895,7 +19895,7 @@ play_lock_current: {
// [513] (byte~) play_lock_current::$4 ← (byte) play_lock_current::yp#2 << (byte) 1 -- vbuaa=vbuz1_rol_1
lda.z yp
asl
// [514] (byte*) play_lock_current::playfield_line#0 ← *((const byte**) playfield_lines + (byte~) play_lock_current::$4) -- pbuz1=pptc1_derefidx_vbuaa
// [514] (byte*) play_lock_current::playfield_line#0 ← *((const byte**) playfield_lines + (byte~) play_lock_current::$4) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda playfield_lines,y
sta.z playfield_line
@ -22691,7 +22691,7 @@ main: {
// [69] (byte) current_xpos#118 ← (byte) current_xpos#100 -- vbuz1=vbuz2
lda.z current_xpos
sta.z current_xpos_1
// [70] (byte*) current_piece_gfx#111 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=pptc1_derefidx_vbuz2
// [70] (byte*) current_piece_gfx#111 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z play_spawn_current.__7
lda PIECES,y
sta.z current_piece_gfx_1
@ -22722,13 +22722,13 @@ main: {
ldx #$20
jsr render_next
// main::@17
// [75] (byte*) current_piece#103 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=pptc1_derefidx_vbuz2
// [75] (byte*) current_piece#103 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z play_spawn_current.__7
lda PIECES,y
sta.z current_piece
lda PIECES+1,y
sta.z current_piece+1
// [76] (byte*) current_piece_gfx#122 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=pptc1_derefidx_vbuz2
// [76] (byte*) current_piece_gfx#122 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=qbuc1_derefidx_vbuz2
lda PIECES,y
sta.z current_piece_gfx
lda PIECES+1,y
@ -22987,13 +22987,13 @@ render_init: {
tya
asl
tax
// [124] *((const byte**) screen_lines_1 + (byte~) render_init::$5) ← (byte*) render_init::li_1#2 -- pptc1_derefidx_vbuxx=pbuz1
// [124] *((const byte**) screen_lines_1 + (byte~) render_init::$5) ← (byte*) render_init::li_1#2 -- qbuc1_derefidx_vbuxx=pbuz1
lda.z li_1
sta screen_lines_1,x
lda.z li_1+1
sta screen_lines_1+1,x
// screen_lines_2[i] = li_2
// [125] *((const byte**) screen_lines_2 + (byte~) render_init::$5) ← (byte*) render_init::li_2#2 -- pptc1_derefidx_vbuxx=pbuz1
// [125] *((const byte**) screen_lines_2 + (byte~) render_init::$5) ← (byte*) render_init::li_2#2 -- qbuc1_derefidx_vbuxx=pbuz1
lda.z li_2
sta screen_lines_2,x
lda.z li_2+1
@ -23129,7 +23129,7 @@ sprites_irq_init: {
lda #IRQ_RASTER
sta IRQ_ENABLE
// *HARDWARE_IRQ = &sprites_irq
// [152] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() -- _deref_pptc1=pprc2
// [152] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<sprites_irq
sta HARDWARE_IRQ
@ -23171,7 +23171,7 @@ play_init: {
tya
asl
tax
// [158] *((const byte**) playfield_lines + (byte~) play_init::$2) ← (byte*) play_init::pli#2 -- pptc1_derefidx_vbuxx=pbuz1
// [158] *((const byte**) playfield_lines + (byte~) play_init::$2) ← (byte*) play_init::pli#2 -- qbuc1_derefidx_vbuxx=pbuz1
lda.z pli
sta playfield_lines,x
lda.z pli+1
@ -23280,7 +23280,7 @@ play_spawn_current: {
// [179] (byte) play_collision::ypos#4 ← (byte) current_ypos#5 -- vbuz1=vbuz2
lda.z current_ypos
sta.z play_collision.ypos
// [180] (byte*) current_piece#102 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=pptc1_derefidx_vbuz2
// [180] (byte*) current_piece#102 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z __7
lda PIECES,y
sta.z current_piece_1
@ -23370,7 +23370,7 @@ render_playfield: {
// screen_line = screen_lines_1[render_screen_render+l]
// [195] (byte~) render_playfield::$3 ← (byte~) render_playfield::$0 << (byte) 1 -- vbuaa=vbuaa_rol_1
asl
// [196] (byte*) render_playfield::screen_line#0 ← *((const byte**) screen_lines_1 + (byte~) render_playfield::$3) -- pbuz1=pptc1_derefidx_vbuaa
// [196] (byte*) render_playfield::screen_line#0 ← *((const byte**) screen_lines_1 + (byte~) render_playfield::$3) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda screen_lines_1,y
sta.z screen_line
@ -23486,7 +23486,7 @@ render_moving: {
// screen_line = screen_lines_1[render_screen_render+ypos]
// [217] (byte~) render_moving::$6 ← (byte~) render_moving::$1 << (byte) 1 -- vbuaa=vbuaa_rol_1
asl
// [218] (byte*) render_moving::screen_line#0 ← *((const byte**) screen_lines_1 + (byte~) render_moving::$6) -- pbuz1=pptc1_derefidx_vbuaa
// [218] (byte*) render_moving::screen_line#0 ← *((const byte**) screen_lines_1 + (byte~) render_moving::$6) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda screen_lines_1,y
sta.z screen_line
@ -23576,7 +23576,7 @@ render_next: {
// [233] (byte) render_next::next_piece_char#0 ← *((const byte*) PIECES_NEXT_CHARS + (byte) next_piece_idx#13) -- vbuz1=pbuc1_derefidx_vbuyy
lda PIECES_NEXT_CHARS,y
sta.z next_piece_char
// [234] (byte*) render_next::next_piece_gfx#8 ← (byte*)*((const word*) PIECES + (byte~) render_next::$6) -- pbuz1=pptc1_derefidx_vbuxx
// [234] (byte*) render_next::next_piece_gfx#8 ← (byte*)*((const word*) PIECES + (byte~) render_next::$6) -- pbuz1=qbuc1_derefidx_vbuxx
lda PIECES,x
sta.z next_piece_gfx
lda PIECES+1,x
@ -24383,7 +24383,7 @@ play_collision: {
// [389] (byte~) play_collision::$14 ← (byte) play_collision::yp#2 << (byte) 1 -- vbuaa=vbuz1_rol_1
lda.z yp
asl
// [390] (byte*) play_collision::playfield_line#0 ← *((const byte**) playfield_lines + (byte~) play_collision::$14) -- pbuz1=pptc1_derefidx_vbuaa
// [390] (byte*) play_collision::playfield_line#0 ← *((const byte**) playfield_lines + (byte~) play_collision::$14) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda playfield_lines,y
sta.z playfield_line
@ -24695,13 +24695,13 @@ play_move_down: {
// [172] phi (byte) next_piece_idx#18 = (byte) next_piece_idx#23 [phi:play_move_down::@16->play_spawn_current#1] -- register_copy
jsr play_spawn_current
// play_move_down::@17
// [452] (byte*) current_piece#95 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=pptc1_derefidx_vbuz2
// [452] (byte*) current_piece#95 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=qbuc1_derefidx_vbuz2
ldy.z play_spawn_current.__7
lda PIECES,y
sta.z current_piece
lda PIECES+1,y
sta.z current_piece+1
// [453] (byte*) current_piece_gfx#116 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=pptc1_derefidx_vbuz2
// [453] (byte*) current_piece_gfx#116 ← (byte*)*((const word*) PIECES + (byte~) play_spawn_current::$7) -- pbuz1=qbuc1_derefidx_vbuz2
lda PIECES,y
sta.z current_piece_gfx
lda PIECES+1,y
@ -25084,7 +25084,7 @@ play_lock_current: {
// [513] (byte~) play_lock_current::$4 ← (byte) play_lock_current::yp#2 << (byte) 1 -- vbuaa=vbuz1_rol_1
lda.z yp
asl
// [514] (byte*) play_lock_current::playfield_line#0 ← *((const byte**) playfield_lines + (byte~) play_lock_current::$4) -- pbuz1=pptc1_derefidx_vbuaa
// [514] (byte*) play_lock_current::playfield_line#0 ← *((const byte**) playfield_lines + (byte~) play_lock_current::$4) -- pbuz1=qbuc1_derefidx_vbuaa
tay
lda playfield_lines,y
sta.z playfield_line

View File

@ -395,7 +395,7 @@ irq_bottom_2: {
// Trigger IRQ 1 at line $fa
lda #$fa
sta VICII+OFFSET_STRUCT_MOS6569_VICII_RASTER
// [4] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_pptc1=pprc2
// [4] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_qprc1=pprc2
lda #<irq_bottom_1
sta KERNEL_IRQ
lda #>irq_bottom_1
@ -429,7 +429,7 @@ irq_bottom_1: {
// Trigger IRQ 2 at line $fd
lda #$fd
sta VICII+OFFSET_STRUCT_MOS6569_VICII_RASTER
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq_bottom_2() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq_bottom_2() -- _deref_qprc1=pprc2
lda #<irq_bottom_2
sta KERNEL_IRQ
lda #>irq_bottom_2
@ -466,7 +466,7 @@ main: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta VICII+OFFSET_STRUCT_MOS6569_VICII_IRQ_ENABLE
// [20] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_pptc1=pprc2
// [20] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq_bottom_1
sta KERNEL_IRQ
@ -570,7 +570,7 @@ irq_bottom_2: {
// Trigger IRQ 1 at line $fa
lda #$fa
sta VICII+OFFSET_STRUCT_MOS6569_VICII_RASTER
// [4] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_pptc1=pprc2
// [4] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_qprc1=pprc2
lda #<irq_bottom_1
sta KERNEL_IRQ
lda #>irq_bottom_1
@ -604,7 +604,7 @@ irq_bottom_1: {
// Trigger IRQ 2 at line $fd
lda #$fd
sta VICII+OFFSET_STRUCT_MOS6569_VICII_RASTER
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq_bottom_2() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq_bottom_2() -- _deref_qprc1=pprc2
lda #<irq_bottom_2
sta KERNEL_IRQ
lda #>irq_bottom_2
@ -641,7 +641,7 @@ main: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta VICII+OFFSET_STRUCT_MOS6569_VICII_IRQ_ENABLE
// [20] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_pptc1=pprc2
// [20] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq_bottom_1
sta KERNEL_IRQ
@ -834,7 +834,7 @@ irq_bottom_2: {
lda #$fa
sta VICII+OFFSET_STRUCT_MOS6569_VICII_RASTER
// *KERNEL_IRQ = &irq_bottom_1
// [4] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_pptc1=pprc2
// [4] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_qprc1=pprc2
lda #<irq_bottom_1
sta KERNEL_IRQ
lda #>irq_bottom_1
@ -873,7 +873,7 @@ irq_bottom_1: {
lda #$fd
sta VICII+OFFSET_STRUCT_MOS6569_VICII_RASTER
// *KERNEL_IRQ = &irq_bottom_2
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq_bottom_2() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq_bottom_2() -- _deref_qprc1=pprc2
lda #<irq_bottom_2
sta KERNEL_IRQ
lda #>irq_bottom_2
@ -917,7 +917,7 @@ main: {
lda #IRQ_RASTER
sta VICII+OFFSET_STRUCT_MOS6569_VICII_IRQ_ENABLE
// *KERNEL_IRQ = &irq_bottom_1
// [20] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_pptc1=pprc2
// [20] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq_bottom_1() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq_bottom_1
sta KERNEL_IRQ

View File

@ -1028,7 +1028,7 @@ setnam: {
// [31] *((const nomodify byte*) setnam::filename_len) ← (byte)(word~) setnam::$0 -- _deref_pbuc1=_byte_vwuz1
lda.z __0
sta filename_len
// [32] *((const nomodify byte**) setnam::filename_ptr) ← (const byte*) main::filename -- _deref_pptc1=pbuc2
// [32] *((const nomodify byte**) setnam::filename_ptr) ← (const byte*) main::filename -- _deref_qbuc1=pbuc2
lda #<main.filename
sta filename_ptr
lda #>main.filename
@ -1074,7 +1074,7 @@ load: {
// [38] *((const byte*) load::loadOrVerify) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta loadOrVerify
// [39] *((const byte**) load::loadAddress) ← (const nomodify byte*) LOAD_SPRITE -- _deref_pptc1=pbuc2
// [39] *((const byte**) load::loadAddress) ← (const nomodify byte*) LOAD_SPRITE -- _deref_qbuc1=pbuc2
lda #<LOAD_SPRITE
sta loadAddress
lda #>LOAD_SPRITE
@ -1402,7 +1402,7 @@ setnam: {
// [31] *((const nomodify byte*) setnam::filename_len) ← (byte)(word~) setnam::$0 -- _deref_pbuc1=_byte_vwuz1
lda.z __0
sta filename_len
// [32] *((const nomodify byte**) setnam::filename_ptr) ← (const byte*) main::filename -- _deref_pptc1=pbuc2
// [32] *((const nomodify byte**) setnam::filename_ptr) ← (const byte*) main::filename -- _deref_qbuc1=pbuc2
lda #<main.filename
sta filename_ptr
lda #>main.filename
@ -1446,7 +1446,7 @@ load: {
// [38] *((const byte*) load::loadOrVerify) ← (byte) 0 -- _deref_pbuc1=vbuc2
lda #0
sta loadOrVerify
// [39] *((const byte**) load::loadAddress) ← (const nomodify byte*) LOAD_SPRITE -- _deref_pptc1=pbuc2
// [39] *((const byte**) load::loadAddress) ← (const nomodify byte*) LOAD_SPRITE -- _deref_qbuc1=pbuc2
lda #<LOAD_SPRITE
sta loadAddress
lda #>LOAD_SPRITE
@ -1919,7 +1919,7 @@ setnam: {
lda.z __0
sta filename_len
// *filename_ptr = filename
// [32] *((const nomodify byte**) setnam::filename_ptr) ← (const byte*) main::filename -- _deref_pptc1=pbuc2
// [32] *((const nomodify byte**) setnam::filename_ptr) ← (const byte*) main::filename -- _deref_qbuc1=pbuc2
lda #<main.filename
sta filename_ptr
lda #>main.filename
@ -1966,7 +1966,7 @@ load: {
lda #0
sta loadOrVerify
// *loadAddress = address
// [39] *((const byte**) load::loadAddress) ← (const nomodify byte*) LOAD_SPRITE -- _deref_pptc1=pbuc2
// [39] *((const byte**) load::loadAddress) ← (const nomodify byte*) LOAD_SPRITE -- _deref_qbuc1=pbuc2
lda #<LOAD_SPRITE
sta loadAddress
lda #>LOAD_SPRITE

View File

@ -718,7 +718,7 @@ krill_loadraw: {
.label fname = $fe
.label return = 7
.label return_1 = 4
// [22] *((const nomodify byte**) krill_loadraw::fname) ← (const byte*) main::filename -- _deref_pptc1=pbuc2
// [22] *((const nomodify byte**) krill_loadraw::fname) ← (const byte*) main::filename -- _deref_qbuc1=pbuc2
lda #<main.filename
sta fname
lda #>main.filename
@ -940,7 +940,7 @@ krill_install: {
krill_loadraw: {
.label status = $ff
.label fname = $fe
// [22] *((const nomodify byte**) krill_loadraw::fname) ← (const byte*) main::filename -- _deref_pptc1=pbuc2
// [22] *((const nomodify byte**) krill_loadraw::fname) ← (const byte*) main::filename -- _deref_qbuc1=pbuc2
lda #<main.filename
sta fname
lda #>main.filename
@ -1310,7 +1310,7 @@ krill_loadraw: {
.label status = $ff
.label fname = $fe
// *fname = filename
// [22] *((const nomodify byte**) krill_loadraw::fname) ← (const byte*) main::filename -- _deref_pptc1=pbuc2
// [22] *((const nomodify byte**) krill_loadraw::fname) ← (const byte*) main::filename -- _deref_qbuc1=pbuc2
lda #<main.filename
sta fname
lda #>main.filename

View File

@ -380,7 +380,7 @@ main: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta VICII+OFFSET_STRUCT_MOS6569_VICII_IRQ_ENABLE
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq_play() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq_play() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq_play
sta KERNEL_IRQ
@ -502,7 +502,7 @@ main: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta VICII+OFFSET_STRUCT_MOS6569_VICII_IRQ_ENABLE
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq_play() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq_play() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq_play
sta KERNEL_IRQ
@ -727,7 +727,7 @@ main: {
lda #IRQ_RASTER
sta VICII+OFFSET_STRUCT_MOS6569_VICII_IRQ_ENABLE
// *KERNEL_IRQ = &irq_play
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq_play() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq_play() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq_play
sta KERNEL_IRQ

View File

@ -512,7 +512,7 @@ nmi2: {
jmp __b1
// nmi2::@1
__b1:
// [13] *((const nomodify void()**) KERNEL_NMI) ← &interrupt(HARDWARE_ALL)(void()) nmi() -- _deref_pptc1=pprc2
// [13] *((const nomodify void()**) KERNEL_NMI) ← &interrupt(HARDWARE_ALL)(void()) nmi() -- _deref_qprc1=pprc2
lda #<nmi
sta KERNEL_NMI
lda #>nmi
@ -550,7 +550,7 @@ nmi: {
// [19] *((byte*)(const nomodify struct MOS6581_SID*) SID+(const byte) OFFSET_STRUCT_MOS6581_SID_VOLUME_FILTER_MODE) ← (byte~) nmi::$1 -- _deref_pbuc1=vbuz1
lda.z __1
sta SID+OFFSET_STRUCT_MOS6581_SID_VOLUME_FILTER_MODE
// [20] *((const nomodify void()**) KERNEL_NMI) ← &interrupt(HARDWARE_ALL)(void()) nmi2() -- _deref_pptc1=pprc2
// [20] *((const nomodify void()**) KERNEL_NMI) ← &interrupt(HARDWARE_ALL)(void()) nmi2() -- _deref_qprc1=pprc2
lda #<nmi2
sta KERNEL_NMI
lda #>nmi2
@ -587,7 +587,7 @@ main: {
// [25] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_INTERRUPT) ← (const nomodify byte) CIA_INTERRUPT_CLEAR -- _deref_pbuc1=vbuc2
lda #CIA_INTERRUPT_CLEAR
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_INTERRUPT
// [26] *((const nomodify void()**) KERNEL_NMI) ← &interrupt(HARDWARE_ALL)(void()) nmi() -- _deref_pptc1=pprc2
// [26] *((const nomodify void()**) KERNEL_NMI) ← &interrupt(HARDWARE_ALL)(void()) nmi() -- _deref_qprc1=pprc2
lda #<nmi
sta KERNEL_NMI
lda #>nmi
@ -749,7 +749,7 @@ nmi2: {
jmp __b1
// nmi2::@1
__b1:
// [13] *((const nomodify void()**) KERNEL_NMI) ← &interrupt(HARDWARE_ALL)(void()) nmi() -- _deref_pptc1=pprc2
// [13] *((const nomodify void()**) KERNEL_NMI) ← &interrupt(HARDWARE_ALL)(void()) nmi() -- _deref_qprc1=pprc2
lda #<nmi
sta KERNEL_NMI
lda #>nmi
@ -784,7 +784,7 @@ nmi: {
and (sample),y
// [19] *((byte*)(const nomodify struct MOS6581_SID*) SID+(const byte) OFFSET_STRUCT_MOS6581_SID_VOLUME_FILTER_MODE) ← (byte~) nmi::$1 -- _deref_pbuc1=vbuaa
sta SID+OFFSET_STRUCT_MOS6581_SID_VOLUME_FILTER_MODE
// [20] *((const nomodify void()**) KERNEL_NMI) ← &interrupt(HARDWARE_ALL)(void()) nmi2() -- _deref_pptc1=pprc2
// [20] *((const nomodify void()**) KERNEL_NMI) ← &interrupt(HARDWARE_ALL)(void()) nmi2() -- _deref_qprc1=pprc2
lda #<nmi2
sta KERNEL_NMI
lda #>nmi2
@ -821,7 +821,7 @@ main: {
// [25] *((byte*)(const nomodify struct MOS6526_CIA*) CIA2+(const byte) OFFSET_STRUCT_MOS6526_CIA_INTERRUPT) ← (const nomodify byte) CIA_INTERRUPT_CLEAR -- _deref_pbuc1=vbuc2
lda #CIA_INTERRUPT_CLEAR
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_INTERRUPT
// [26] *((const nomodify void()**) KERNEL_NMI) ← &interrupt(HARDWARE_ALL)(void()) nmi() -- _deref_pptc1=pprc2
// [26] *((const nomodify void()**) KERNEL_NMI) ← &interrupt(HARDWARE_ALL)(void()) nmi() -- _deref_qprc1=pprc2
lda #<nmi
sta KERNEL_NMI
lda #>nmi
@ -1086,7 +1086,7 @@ nmi2: {
// nmi2::@1
__b1:
// *KERNEL_NMI = &nmi
// [13] *((const nomodify void()**) KERNEL_NMI) ← &interrupt(HARDWARE_ALL)(void()) nmi() -- _deref_pptc1=pprc2
// [13] *((const nomodify void()**) KERNEL_NMI) ← &interrupt(HARDWARE_ALL)(void()) nmi() -- _deref_qprc1=pprc2
lda #<nmi
sta KERNEL_NMI
lda #>nmi
@ -1126,7 +1126,7 @@ nmi: {
// [19] *((byte*)(const nomodify struct MOS6581_SID*) SID+(const byte) OFFSET_STRUCT_MOS6581_SID_VOLUME_FILTER_MODE) ← (byte~) nmi::$1 -- _deref_pbuc1=vbuaa
sta SID+OFFSET_STRUCT_MOS6581_SID_VOLUME_FILTER_MODE
// *KERNEL_NMI = &nmi2
// [20] *((const nomodify void()**) KERNEL_NMI) ← &interrupt(HARDWARE_ALL)(void()) nmi2() -- _deref_pptc1=pprc2
// [20] *((const nomodify void()**) KERNEL_NMI) ← &interrupt(HARDWARE_ALL)(void()) nmi2() -- _deref_qprc1=pprc2
lda #<nmi2
sta KERNEL_NMI
lda #>nmi2
@ -1166,7 +1166,7 @@ main: {
lda #CIA_INTERRUPT_CLEAR
sta CIA2+OFFSET_STRUCT_MOS6526_CIA_INTERRUPT
// *KERNEL_NMI = &nmi
// [26] *((const nomodify void()**) KERNEL_NMI) ← &interrupt(HARDWARE_ALL)(void()) nmi() -- _deref_pptc1=pprc2
// [26] *((const nomodify void()**) KERNEL_NMI) ← &interrupt(HARDWARE_ALL)(void()) nmi() -- _deref_qprc1=pprc2
lda #<nmi
sta KERNEL_NMI
lda #>nmi

View File

@ -118,7 +118,7 @@ main: {
sta $400
lda.z u+1
sta $400+1
// [2] (byte*~) main::$1 ← *((byte**) 209) + (word) $d400 -- pbuz1=_deref_pptc1_plus_vwuc2
// [2] (byte*~) main::$1 ← *((byte**) 209) + (word) $d400 -- pbuz1=_deref_qbuc1_plus_vwuc2
clc
lda $d1
adc #<$d400
@ -126,7 +126,7 @@ main: {
lda $d1+1
adc #>$d400
sta.z __1+1
// [3] *((byte**) 243) ← (byte*~) main::$1 -- _deref_pptc1=pbuz1
// [3] *((byte**) 243) ← (byte*~) main::$1 -- _deref_qbuc1=pbuz1
lda.z __1
sta $f3
lda.z __1+1
@ -179,7 +179,7 @@ main: {
sta $400
lda.z u+1
sta $400+1
// [2] (byte*~) main::$1 ← *((byte**) 209) + (word) $d400 -- pbuz1=_deref_pptc1_plus_vwuc2
// [2] (byte*~) main::$1 ← *((byte**) 209) + (word) $d400 -- pbuz1=_deref_qbuc1_plus_vwuc2
clc
lda $d1
adc #<$d400
@ -187,7 +187,7 @@ main: {
lda $d1+1
adc #>$d400
sta.z __1+1
// [3] *((byte**) 243) ← (byte*~) main::$1 -- _deref_pptc1=pbuz1
// [3] *((byte**) 243) ← (byte*~) main::$1 -- _deref_qbuc1=pbuz1
lda.z __1
sta $f3
lda.z __1+1
@ -247,7 +247,7 @@ main: {
lda.z u+1
sta $400+1
// *(byte **)0xD1 + 0xD400
// [2] (byte*~) main::$1 ← *((byte**) 209) + (word) $d400 -- pbuz1=_deref_pptc1_plus_vwuc2
// [2] (byte*~) main::$1 ← *((byte**) 209) + (word) $d400 -- pbuz1=_deref_qbuc1_plus_vwuc2
clc
lda $d1
adc #<$d400
@ -256,7 +256,7 @@ main: {
adc #>$d400
sta.z __1+1
// *(byte **)0xF3 = *(byte **)0xD1 + 0xD400
// [3] *((byte**) 243) ← (byte*~) main::$1 -- _deref_pptc1=pbuz1
// [3] *((byte**) 243) ← (byte*~) main::$1 -- _deref_qbuc1=pbuz1
lda.z __1
sta $f3
lda.z __1+1

View File

@ -210,7 +210,7 @@ main: {
lda.z __0
asl
sta.z __2
// [5] (void()*) main::f#0 ← *((const void()**) fns + (byte~) main::$2) -- pprz1=pptc1_derefidx_vbuz2
// [5] (void()*) main::f#0 ← *((const void()**) fns + (byte~) main::$2) -- pprz1=qprc1_derefidx_vbuz2
ldy.z __2
lda fns,y
sta.z f
@ -310,7 +310,7 @@ main: {
and.z i
// [4] (byte~) main::$2 ← (byte~) main::$0 << (byte) 1 -- vbuaa=vbuaa_rol_1
asl
// [5] (void()*) main::f#0 ← *((const void()**) fns + (byte~) main::$2) -- pprz1=pptc1_derefidx_vbuaa
// [5] (void()*) main::f#0 ← *((const void()**) fns + (byte~) main::$2) -- pprz1=qprc1_derefidx_vbuaa
tay
lda fns,y
sta.z f
@ -421,7 +421,7 @@ main: {
// f = fns[++i&1]
// [4] (byte~) main::$2 ← (byte~) main::$0 << (byte) 1 -- vbuaa=vbuaa_rol_1
asl
// [5] (void()*) main::f#0 ← *((const void()**) fns + (byte~) main::$2) -- pprz1=pptc1_derefidx_vbuaa
// [5] (void()*) main::f#0 ← *((const void()**) fns + (byte~) main::$2) -- pprz1=qprc1_derefidx_vbuaa
tay
lda fns,y
sta.z f

View File

@ -1000,7 +1000,7 @@ utoa16n: {
jmp __b2
// utoa16n::@2
__b2:
// [45] *(*(&(volatile byte*) utoa16w::dst)) ← *((const byte*) DIGITS + (byte) utoa16n::nybble#4) -- _deref_(_deref_pptc1)=pbuc2_derefidx_vbuz1
// [45] *(*(&(volatile byte*) utoa16w::dst)) ← *((const byte*) DIGITS + (byte) utoa16n::nybble#4) -- _deref_(_deref_qbuc1)=pbuc2_derefidx_vbuz1
ldy.z nybble
lda DIGITS,y
ldy.z utoa16w.dst
@ -1009,7 +1009,7 @@ utoa16n: {
sty.z $ff
ldy #0
sta ($fe),y
// [46] *(&(volatile byte*) utoa16w::dst) ← ++ *(&(volatile byte*) utoa16w::dst) -- _deref_pptc1=_inc__deref_pptc1
// [46] *(&(volatile byte*) utoa16w::dst) ← ++ *(&(volatile byte*) utoa16w::dst) -- _deref_qbuc1=_inc__deref_qbuc1
inc.z utoa16w.dst
bne !+
inc.z utoa16w.dst+1
@ -1343,7 +1343,7 @@ utoa16n: {
jmp __b2
// utoa16n::@2
__b2:
// [45] *(*(&(volatile byte*) utoa16w::dst)) ← *((const byte*) DIGITS + (byte) utoa16n::nybble#4) -- _deref_(_deref_pptc1)=pbuc2_derefidx_vbuaa
// [45] *(*(&(volatile byte*) utoa16w::dst)) ← *((const byte*) DIGITS + (byte) utoa16n::nybble#4) -- _deref_(_deref_qbuc1)=pbuc2_derefidx_vbuaa
tay
lda DIGITS,y
ldy.z utoa16w.dst
@ -1352,7 +1352,7 @@ utoa16n: {
sty.z $ff
ldy #0
sta ($fe),y
// [46] *(&(volatile byte*) utoa16w::dst) ← ++ *(&(volatile byte*) utoa16w::dst) -- _deref_pptc1=_inc__deref_pptc1
// [46] *(&(volatile byte*) utoa16w::dst) ← ++ *(&(volatile byte*) utoa16w::dst) -- _deref_qbuc1=_inc__deref_qbuc1
inc.z utoa16w.dst
bne !+
inc.z utoa16w.dst+1
@ -1733,7 +1733,7 @@ utoa16n: {
beq __breturn
// utoa16n::@2
// *(*dst)++ = DIGITS[nybble]
// [45] *(*(&(volatile byte*) utoa16w::dst)) ← *((const byte*) DIGITS + (byte) utoa16n::nybble#4) -- _deref_(_deref_pptc1)=pbuc2_derefidx_vbuaa
// [45] *(*(&(volatile byte*) utoa16w::dst)) ← *((const byte*) DIGITS + (byte) utoa16n::nybble#4) -- _deref_(_deref_qbuc1)=pbuc2_derefidx_vbuaa
tay
lda DIGITS,y
ldy.z utoa16w.dst
@ -1743,7 +1743,7 @@ utoa16n: {
ldy #0
sta ($fe),y
// *(*dst)++ = DIGITS[nybble];
// [46] *(&(volatile byte*) utoa16w::dst) ← ++ *(&(volatile byte*) utoa16w::dst) -- _deref_pptc1=_inc__deref_pptc1
// [46] *(&(volatile byte*) utoa16w::dst) ← ++ *(&(volatile byte*) utoa16w::dst) -- _deref_qbuc1=_inc__deref_qbuc1
inc.z utoa16w.dst
bne !+
inc.z utoa16w.dst+1

View File

@ -1854,7 +1854,7 @@ utoa16n: {
jmp __b2
// utoa16n::@2
__b2:
// [84] *(*(&(volatile byte*) utoa16w::dst)) ← *((const byte*) DIGITS + (byte) utoa16n::nybble#4) -- _deref_(_deref_pptc1)=pbuc2_derefidx_vbuz1
// [84] *(*(&(volatile byte*) utoa16w::dst)) ← *((const byte*) DIGITS + (byte) utoa16n::nybble#4) -- _deref_(_deref_qbuc1)=pbuc2_derefidx_vbuz1
ldy.z nybble
lda DIGITS,y
ldy.z utoa16w.dst
@ -1863,7 +1863,7 @@ utoa16n: {
sty.z $ff
ldy #0
sta ($fe),y
// [85] *(&(volatile byte*) utoa16w::dst) ← ++ *(&(volatile byte*) utoa16w::dst) -- _deref_pptc1=_inc__deref_pptc1
// [85] *(&(volatile byte*) utoa16w::dst) ← ++ *(&(volatile byte*) utoa16w::dst) -- _deref_qbuc1=_inc__deref_qbuc1
inc.z utoa16w.dst
bne !+
inc.z utoa16w.dst+1
@ -2526,7 +2526,7 @@ utoa16n: {
jmp __b2
// utoa16n::@2
__b2:
// [84] *(*(&(volatile byte*) utoa16w::dst)) ← *((const byte*) DIGITS + (byte) utoa16n::nybble#4) -- _deref_(_deref_pptc1)=pbuc2_derefidx_vbuaa
// [84] *(*(&(volatile byte*) utoa16w::dst)) ← *((const byte*) DIGITS + (byte) utoa16n::nybble#4) -- _deref_(_deref_qbuc1)=pbuc2_derefidx_vbuaa
tay
lda DIGITS,y
ldy.z utoa16w.dst
@ -2535,7 +2535,7 @@ utoa16n: {
sty.z $ff
ldy #0
sta ($fe),y
// [85] *(&(volatile byte*) utoa16w::dst) ← ++ *(&(volatile byte*) utoa16w::dst) -- _deref_pptc1=_inc__deref_pptc1
// [85] *(&(volatile byte*) utoa16w::dst) ← ++ *(&(volatile byte*) utoa16w::dst) -- _deref_qbuc1=_inc__deref_qbuc1
inc.z utoa16w.dst
bne !+
inc.z utoa16w.dst+1
@ -3257,7 +3257,7 @@ utoa16n: {
beq __breturn
// utoa16n::@2
// *(*dst)++ = DIGITS[nybble]
// [84] *(*(&(volatile byte*) utoa16w::dst)) ← *((const byte*) DIGITS + (byte) utoa16n::nybble#4) -- _deref_(_deref_pptc1)=pbuc2_derefidx_vbuaa
// [84] *(*(&(volatile byte*) utoa16w::dst)) ← *((const byte*) DIGITS + (byte) utoa16n::nybble#4) -- _deref_(_deref_qbuc1)=pbuc2_derefidx_vbuaa
tay
lda DIGITS,y
ldy.z utoa16w.dst
@ -3267,7 +3267,7 @@ utoa16n: {
ldy #0
sta ($fe),y
// *(*dst)++ = DIGITS[nybble];
// [85] *(&(volatile byte*) utoa16w::dst) ← ++ *(&(volatile byte*) utoa16w::dst) -- _deref_pptc1=_inc__deref_pptc1
// [85] *(&(volatile byte*) utoa16w::dst) ← ++ *(&(volatile byte*) utoa16w::dst) -- _deref_qbuc1=_inc__deref_qbuc1
inc.z utoa16w.dst
bne !+
inc.z utoa16w.dst+1

View File

@ -191,7 +191,7 @@ irq: {
}
// main
main: {
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq
@ -285,7 +285,7 @@ irq: {
}
// main
main: {
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq
@ -390,7 +390,7 @@ irq: {
// main
main: {
// *KERNEL_IRQ = &irq
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq

View File

@ -363,7 +363,7 @@ main: {
.label a = 4
.label y = 3
.label x = 2
// [10] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [10] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq
@ -543,7 +543,7 @@ irq: {
// main
main: {
.label y = 2
// [10] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [10] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq
@ -755,7 +755,7 @@ irq: {
main: {
.label y = 2
// *KERNEL_IRQ = &irq
// [10] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [10] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq

View File

@ -431,7 +431,7 @@ main: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [10] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_pptc1=pprc2
// [10] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta HARDWARE_IRQ
@ -584,7 +584,7 @@ main: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [10] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_pptc1=pprc2
// [10] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta HARDWARE_IRQ
@ -831,7 +831,7 @@ main: {
lda #IRQ_RASTER
sta IRQ_ENABLE
// *HARDWARE_IRQ = &irq
// [10] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_pptc1=pprc2
// [10] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta HARDWARE_IRQ

View File

@ -231,7 +231,7 @@ main: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [11] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta HARDWARE_IRQ
@ -356,7 +356,7 @@ main: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [11] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta HARDWARE_IRQ
@ -495,7 +495,7 @@ main: {
lda #IRQ_RASTER
sta IRQ_ENABLE
// *HARDWARE_IRQ = &irq
// [11] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_CLOBBER)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta HARDWARE_IRQ

View File

@ -232,7 +232,7 @@ main: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [11] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_STACK)(void()) irq() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_STACK)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta HARDWARE_IRQ
@ -357,7 +357,7 @@ main: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [11] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_STACK)(void()) irq() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_STACK)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta HARDWARE_IRQ
@ -503,7 +503,7 @@ main: {
lda #IRQ_RASTER
sta IRQ_ENABLE
// *HARDWARE_IRQ = &irq
// [11] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_STACK)(void()) irq() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_STACK)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta HARDWARE_IRQ

View File

@ -231,7 +231,7 @@ main: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [11] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_ALL)(void()) irq() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_ALL)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta HARDWARE_IRQ
@ -355,7 +355,7 @@ main: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [11] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_ALL)(void()) irq() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_ALL)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta HARDWARE_IRQ
@ -500,7 +500,7 @@ main: {
lda #IRQ_RASTER
sta IRQ_ENABLE
// *HARDWARE_IRQ = &irq
// [11] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_ALL)(void()) irq() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(HARDWARE_ALL)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta HARDWARE_IRQ

View File

@ -611,7 +611,7 @@ main: {
// Acknowledge any IRQ
lda #IRQ_RASTER
sta IRQ_STATUS
// [24] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) table_driven_irq() -- _deref_pptc1=pprc2
// [24] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) table_driven_irq() -- _deref_qprc1=pprc2
// Setup the table driven IRQ routine
lda #<table_driven_irq
sta KERNEL_IRQ
@ -819,7 +819,7 @@ main: {
// Acknowledge any IRQ
lda #IRQ_RASTER
sta IRQ_STATUS
// [24] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) table_driven_irq() -- _deref_pptc1=pprc2
// [24] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) table_driven_irq() -- _deref_qprc1=pprc2
// Setup the table driven IRQ routine
lda #<table_driven_irq
sta KERNEL_IRQ
@ -1136,7 +1136,7 @@ main: {
// Acknowledge any IRQ
sta IRQ_STATUS
// *KERNEL_IRQ = &table_driven_irq
// [24] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) table_driven_irq() -- _deref_pptc1=pprc2
// [24] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) table_driven_irq() -- _deref_qprc1=pprc2
// Setup the table driven IRQ routine
lda #<table_driven_irq
sta KERNEL_IRQ

View File

@ -291,7 +291,7 @@ irq: {
main: {
// asm { sei }
sei
// [4] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq() -- _deref_pptc1=pprc2
// [4] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq
@ -361,7 +361,7 @@ irq: {
main: {
// asm { sei }
sei
// [4] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq() -- _deref_pptc1=pprc2
// [4] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq
@ -520,7 +520,7 @@ main: {
// asm { sei }
sei
// *KERNEL_IRQ = &irq
// [4] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq() -- _deref_pptc1=pprc2
// [4] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq

View File

@ -178,7 +178,7 @@ main: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [9] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq() -- _deref_pptc1=pprc2
// [9] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta KERNEL_IRQ
@ -272,7 +272,7 @@ main: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [9] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq() -- _deref_pptc1=pprc2
// [9] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta KERNEL_IRQ
@ -384,7 +384,7 @@ main: {
lda #IRQ_RASTER
sta IRQ_ENABLE
// *KERNEL_IRQ = &irq
// [9] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq() -- _deref_pptc1=pprc2
// [9] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_KEYBOARD)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta KERNEL_IRQ

View File

@ -976,7 +976,7 @@ main: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [22] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [22] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta KERNEL_IRQ
@ -1481,7 +1481,7 @@ main: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [22] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [22] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta KERNEL_IRQ
@ -2077,7 +2077,7 @@ main: {
lda #IRQ_RASTER
sta IRQ_ENABLE
// *KERNEL_IRQ = &irq
// [22] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [22] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta KERNEL_IRQ

View File

@ -178,7 +178,7 @@ main: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [9] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [9] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta KERNEL_IRQ
@ -272,7 +272,7 @@ main: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [9] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [9] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta KERNEL_IRQ
@ -384,7 +384,7 @@ main: {
lda #IRQ_RASTER
sta IRQ_ENABLE
// *KERNEL_IRQ = &irq
// [9] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [9] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta KERNEL_IRQ

View File

@ -261,7 +261,7 @@ main: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta KERNEL_IRQ
@ -370,7 +370,7 @@ main: {
// Enable Raster Interrupt
lda #IRQ_RASTER
sta IRQ_ENABLE
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta KERNEL_IRQ
@ -504,7 +504,7 @@ main: {
lda #IRQ_RASTER
sta IRQ_ENABLE
// *KERNEL_IRQ = &irq
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
// Set the IRQ routine
lda #<irq
sta KERNEL_IRQ

View File

@ -120,7 +120,7 @@ main: {
}
// print
print: {
// [3] *((byte**) 128) ← (const byte*) main::str -- _deref_pptc1=pbuc2
// [3] *((byte**) 128) ← (const byte*) main::str -- _deref_qbuc1=pbuc2
lda #<main.str
sta $80
lda #>main.str
@ -167,7 +167,7 @@ main: {
}
// print
print: {
// [3] *((byte**) 128) ← (const byte*) main::str -- _deref_pptc1=pbuc2
// [3] *((byte**) 128) ← (const byte*) main::str -- _deref_qbuc1=pbuc2
lda #<main.str
sta $80
lda #>main.str
@ -223,7 +223,7 @@ main: {
// print
print: {
// *(char**)0x80 = (char*)str
// [3] *((byte**) 128) ← (const byte*) main::str -- _deref_pptc1=pbuc2
// [3] *((byte**) 128) ← (const byte*) main::str -- _deref_qbuc1=pbuc2
lda #<main.str
sta $80
lda #>main.str

View File

@ -237,7 +237,7 @@ irq: {
}
// main
main: {
// [10] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [10] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq
@ -339,7 +339,7 @@ irq: {
}
// main
main: {
// [10] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [10] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq
@ -459,7 +459,7 @@ irq: {
// main
main: {
// *KERNEL_IRQ = &irq
// [10] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [10] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq

View File

@ -1758,7 +1758,7 @@ prepend: {
sta.z new
lda.z alloc.return_1+1
sta.z new+1
// [30] *((struct node**)(struct node*) prepend::new#1) ← (struct node*) root#22 -- _deref_pptz1=pssz2
// [30] *((struct node**)(struct node*) prepend::new#1) ← (struct node*) root#22 -- _deref_qssz1=pssz2
ldy #0
lda.z root
sta (new),y
@ -1828,7 +1828,7 @@ sum: {
lda.z s+1
adc (current),y
sta.z s+1
// [39] (struct node*) sum::current#2 ← *((struct node**)(struct node*) sum::current#3) -- pssz1=_deref_pptz1
// [39] (struct node*) sum::current#2 ← *((struct node**)(struct node*) sum::current#3) -- pssz1=_deref_qssz1
ldy #0
lda (current),y
pha
@ -2381,7 +2381,7 @@ prepend: {
// prepend::@1
__b1:
// [29] (struct node*) prepend::new#1 ← (struct node*) alloc::return#2
// [30] *((struct node**)(struct node*) prepend::new#1) ← (struct node*) root#22 -- _deref_pptz1=pssz2
// [30] *((struct node**)(struct node*) prepend::new#1) ← (struct node*) root#22 -- _deref_qssz1=pssz2
ldy #0
lda.z root
sta (new),y
@ -2447,7 +2447,7 @@ sum: {
lda.z s+1
adc (current),y
sta.z s+1
// [39] (struct node*) sum::current#2 ← *((struct node**)(struct node*) sum::current#3) -- pssz1=_deref_pptz1
// [39] (struct node*) sum::current#2 ← *((struct node**)(struct node*) sum::current#3) -- pssz1=_deref_qssz1
ldy #0
lda (current),y
pha
@ -3117,7 +3117,7 @@ prepend: {
// new = alloc()
// [29] (struct node*) prepend::new#1 ← (struct node*) alloc::return#2
// new->next = root
// [30] *((struct node**)(struct node*) prepend::new#1) ← (struct node*) root#22 -- _deref_pptz1=pssz2
// [30] *((struct node**)(struct node*) prepend::new#1) ← (struct node*) root#22 -- _deref_qssz1=pssz2
ldy #0
lda.z root
sta (new),y
@ -3184,7 +3184,7 @@ sum: {
adc (current),y
sta.z s+1
// current = current->next
// [39] (struct node*) sum::current#2 ← *((struct node**)(struct node*) sum::current#3) -- pssz1=_deref_pptz1
// [39] (struct node*) sum::current#2 ← *((struct node**)(struct node*) sum::current#3) -- pssz1=_deref_qssz1
ldy #0
lda (current),y
pha

View File

@ -2063,7 +2063,7 @@ init: {
// [74] *((const nomodify byte*) IRQ_STATUS) ← (const nomodify byte) IRQ_RASTER -- _deref_pbuc1=vbuc2
lda #IRQ_RASTER
sta IRQ_STATUS
// [75] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) plex_irq() -- _deref_pptc1=pprc2
// [75] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) plex_irq() -- _deref_qprc1=pprc2
lda #<plex_irq
sta KERNEL_IRQ
lda #>plex_irq
@ -3067,7 +3067,7 @@ init: {
// [74] *((const nomodify byte*) IRQ_STATUS) ← (const nomodify byte) IRQ_RASTER -- _deref_pbuc1=vbuc2
lda #IRQ_RASTER
sta IRQ_STATUS
// [75] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) plex_irq() -- _deref_pptc1=pprc2
// [75] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) plex_irq() -- _deref_qprc1=pprc2
lda #<plex_irq
sta KERNEL_IRQ
lda #>plex_irq
@ -4153,7 +4153,7 @@ init: {
// [74] *((const nomodify byte*) IRQ_STATUS) ← (const nomodify byte) IRQ_RASTER -- _deref_pbuc1=vbuc2
sta IRQ_STATUS
// *KERNEL_IRQ = &plex_irq
// [75] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) plex_irq() -- _deref_pptc1=pprc2
// [75] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) plex_irq() -- _deref_qprc1=pprc2
lda #<plex_irq
sta KERNEL_IRQ
lda #>plex_irq

View File

@ -96,7 +96,7 @@ main: {
sta.z pb
lda #>b
sta.z pb+1
// [2] *((const nomodify byte*) main::SCREEN) ← *(*((const byte**) main::ppb)) -- _deref_pbuc1=_deref_(_deref_pptc2)
// [2] *((const nomodify byte*) main::SCREEN) ← *(*((const byte**) main::ppb)) -- _deref_pbuc1=_deref_(_deref_qbuc2)
ldy.z ppb
sty.z $fe
ldy.z ppb+1
@ -150,7 +150,7 @@ main: {
sta.z pb
lda #>b
sta.z pb+1
// [2] *((const nomodify byte*) main::SCREEN) ← *(*((const byte**) main::ppb)) -- _deref_pbuc1=_deref_(_deref_pptc2)
// [2] *((const nomodify byte*) main::SCREEN) ← *(*((const byte**) main::ppb)) -- _deref_pbuc1=_deref_(_deref_qbuc2)
ldy.z ppb
sty.z $fe
ldy.z ppb+1
@ -211,7 +211,7 @@ main: {
lda #>b
sta.z pb+1
// *SCREEN = **ppb
// [2] *((const nomodify byte*) main::SCREEN) ← *(*((const byte**) main::ppb)) -- _deref_pbuc1=_deref_(_deref_pptc2)
// [2] *((const nomodify byte*) main::SCREEN) ← *(*((const byte**) main::ppb)) -- _deref_pbuc1=_deref_(_deref_qbuc2)
ldy.z ppb
sty.z $fe
ldy.z ppb+1

View File

@ -435,7 +435,7 @@ nexttext: {
jmp __b2
// nexttext::@2
__b2:
// [14] *((const byte**) nexttext::textp#0) ← (const byte*) text2 -- _deref_pptc1=pbuc2
// [14] *((const byte**) nexttext::textp#0) ← (const byte*) text2 -- _deref_qbuc1=pbuc2
lda #<text2
sta.z textp
lda #>text2
@ -447,7 +447,7 @@ nexttext: {
rts
// nexttext::@1
__b1:
// [16] *((const byte**) nexttext::textp#0) ← (const byte*) text1 -- _deref_pptc1=pbuc2
// [16] *((const byte**) nexttext::textp#0) ← (const byte*) text1 -- _deref_qbuc1=pbuc2
lda #<text1
sta.z textp
lda #>text1
@ -595,7 +595,7 @@ nexttext: {
jmp __b2
// nexttext::@2
__b2:
// [14] *((const byte**) nexttext::textp#0) ← (const byte*) text2 -- _deref_pptc1=pbuc2
// [14] *((const byte**) nexttext::textp#0) ← (const byte*) text2 -- _deref_qbuc1=pbuc2
lda #<text2
sta.z textp
lda #>text2
@ -607,7 +607,7 @@ nexttext: {
rts
// nexttext::@1
__b1:
// [16] *((const byte**) nexttext::textp#0) ← (const byte*) text1 -- _deref_pptc1=pbuc2
// [16] *((const byte**) nexttext::textp#0) ← (const byte*) text1 -- _deref_qbuc1=pbuc2
lda #<text1
sta.z textp
lda #>text1
@ -783,7 +783,7 @@ nexttext: {
beq __b1
// nexttext::@2
// *textp = text2
// [14] *((const byte**) nexttext::textp#0) ← (const byte*) text2 -- _deref_pptc1=pbuc2
// [14] *((const byte**) nexttext::textp#0) ← (const byte*) text2 -- _deref_qbuc1=pbuc2
lda #<text2
sta.z textp
lda #>text2
@ -795,7 +795,7 @@ nexttext: {
// nexttext::@1
__b1:
// *textp = text1
// [16] *((const byte**) nexttext::textp#0) ← (const byte*) text1 -- _deref_pptc1=pbuc2
// [16] *((const byte**) nexttext::textp#0) ← (const byte*) text1 -- _deref_qbuc1=pbuc2
lda #<text1
sta.z textp
lda #>text1

View File

@ -259,7 +259,7 @@ main: {
// setscreen(byte* zp(2) val)
setscreen: {
.label val = 2
// [12] *(&(volatile byte*) screen) ← (byte*) setscreen::val#2 -- _deref_pptc1=pbuz1
// [12] *(&(volatile byte*) screen) ← (byte*) setscreen::val#2 -- _deref_qbuc1=pbuz1
lda.z val
sta.z @screen
lda.z val+1
@ -371,7 +371,7 @@ main: {
// setscreen(byte* zp(2) val)
setscreen: {
.label val = 2
// [12] *(&(volatile byte*) screen) ← (byte*) setscreen::val#2 -- _deref_pptc1=pbuz1
// [12] *(&(volatile byte*) screen) ← (byte*) setscreen::val#2 -- _deref_qbuc1=pbuz1
lda.z val
sta.z @screen
lda.z val+1
@ -502,7 +502,7 @@ main: {
setscreen: {
.label val = 2
// *screen = val
// [12] *(&(volatile byte*) screen) ← (byte*) setscreen::val#2 -- _deref_pptc1=pbuz1
// [12] *(&(volatile byte*) screen) ← (byte*) setscreen::val#2 -- _deref_qbuc1=pbuz1
lda.z val
sta.z @screen
lda.z val+1

View File

@ -86,7 +86,7 @@ main: {
sta.z screen
lda #>$400
sta.z screen+1
// [1] *(*((const byte**) main::pscreen)) ← (byte) 'a' -- _deref_(_deref_pptc1)=vbuc2
// [1] *(*((const byte**) main::pscreen)) ← (byte) 'a' -- _deref_(_deref_qbuc1)=vbuc2
lda #'a'
ldy.z pscreen
sty.z $fe
@ -94,12 +94,12 @@ main: {
sty.z $ff
ldy #0
sta ($fe),y
// [2] *((const byte**) main::pscreen) ← ++ *((const byte**) main::pscreen) -- _deref_pptc1=_inc__deref_pptc1
// [2] *((const byte**) main::pscreen) ← ++ *((const byte**) main::pscreen) -- _deref_qbuc1=_inc__deref_qbuc1
inc.z pscreen
bne !+
inc.z pscreen+1
!:
// [3] *(*((const byte**) main::pscreen)) ← (byte) 'b' -- _deref_(_deref_pptc1)=vbuc2
// [3] *(*((const byte**) main::pscreen)) ← (byte) 'b' -- _deref_(_deref_qbuc1)=vbuc2
lda #'b'
ldy.z pscreen
sty.z $fe
@ -145,7 +145,7 @@ main: {
sta.z screen
lda #>$400
sta.z screen+1
// [1] *(*((const byte**) main::pscreen)) ← (byte) 'a' -- _deref_(_deref_pptc1)=vbuc2
// [1] *(*((const byte**) main::pscreen)) ← (byte) 'a' -- _deref_(_deref_qbuc1)=vbuc2
lda #'a'
ldy.z pscreen
sty.z $fe
@ -153,12 +153,12 @@ main: {
sty.z $ff
ldy #0
sta ($fe),y
// [2] *((const byte**) main::pscreen) ← ++ *((const byte**) main::pscreen) -- _deref_pptc1=_inc__deref_pptc1
// [2] *((const byte**) main::pscreen) ← ++ *((const byte**) main::pscreen) -- _deref_qbuc1=_inc__deref_qbuc1
inc.z pscreen
bne !+
inc.z pscreen+1
!:
// [3] *(*((const byte**) main::pscreen)) ← (byte) 'b' -- _deref_(_deref_pptc1)=vbuc2
// [3] *(*((const byte**) main::pscreen)) ← (byte) 'b' -- _deref_(_deref_qbuc1)=vbuc2
lda #'b'
ldy.z pscreen
sty.z $fe
@ -210,7 +210,7 @@ main: {
lda #>$400
sta.z screen+1
// **pscreen = 'a'
// [1] *(*((const byte**) main::pscreen)) ← (byte) 'a' -- _deref_(_deref_pptc1)=vbuc2
// [1] *(*((const byte**) main::pscreen)) ← (byte) 'a' -- _deref_(_deref_qbuc1)=vbuc2
lda #'a'
ldy.z pscreen
sty.z $fe
@ -219,13 +219,13 @@ main: {
ldy #0
sta ($fe),y
// (*pscreen)++;
// [2] *((const byte**) main::pscreen) ← ++ *((const byte**) main::pscreen) -- _deref_pptc1=_inc__deref_pptc1
// [2] *((const byte**) main::pscreen) ← ++ *((const byte**) main::pscreen) -- _deref_qbuc1=_inc__deref_qbuc1
inc.z pscreen
bne !+
inc.z pscreen+1
!:
// **pscreen = 'b'
// [3] *(*((const byte**) main::pscreen)) ← (byte) 'b' -- _deref_(_deref_pptc1)=vbuc2
// [3] *(*((const byte**) main::pscreen)) ← (byte) 'b' -- _deref_(_deref_qbuc1)=vbuc2
lda #'b'
ldy.z pscreen
sty.z $fe

View File

@ -185,7 +185,7 @@ main: {
// sub(byte zp(2) ch)
sub: {
.label ch = 2
// [6] *(*((const byte**) main::pscreen)) ← (byte) sub::ch#2 -- _deref_(_deref_pptc1)=vbuz1
// [6] *(*((const byte**) main::pscreen)) ← (byte) sub::ch#2 -- _deref_(_deref_qbuc1)=vbuz1
lda.z ch
ldy.z main.pscreen
sty.z $fe
@ -193,7 +193,7 @@ sub: {
sty.z $ff
ldy #0
sta ($fe),y
// [7] *((const byte**) main::pscreen) ← ++ *((const byte**) main::pscreen) -- _deref_pptc1=_inc__deref_pptc1
// [7] *((const byte**) main::pscreen) ← ++ *((const byte**) main::pscreen) -- _deref_qbuc1=_inc__deref_qbuc1
inc.z main.pscreen
bne !+
inc.z main.pscreen+1
@ -265,14 +265,14 @@ main: {
// sub
// sub(byte register(A) ch)
sub: {
// [6] *(*((const byte**) main::pscreen)) ← (byte) sub::ch#2 -- _deref_(_deref_pptc1)=vbuaa
// [6] *(*((const byte**) main::pscreen)) ← (byte) sub::ch#2 -- _deref_(_deref_qbuc1)=vbuaa
ldy.z main.pscreen
sty.z $fe
ldy.z main.pscreen+1
sty.z $ff
ldy #0
sta ($fe),y
// [7] *((const byte**) main::pscreen) ← ++ *((const byte**) main::pscreen) -- _deref_pptc1=_inc__deref_pptc1
// [7] *((const byte**) main::pscreen) ← ++ *((const byte**) main::pscreen) -- _deref_qbuc1=_inc__deref_qbuc1
inc.z main.pscreen
bne !+
inc.z main.pscreen+1
@ -358,7 +358,7 @@ main: {
// sub(byte register(A) ch)
sub: {
// *(*dst)++ = ch
// [6] *(*((const byte**) main::pscreen)) ← (byte) sub::ch#2 -- _deref_(_deref_pptc1)=vbuaa
// [6] *(*((const byte**) main::pscreen)) ← (byte) sub::ch#2 -- _deref_(_deref_qbuc1)=vbuaa
ldy.z main.pscreen
sty.z $fe
ldy.z main.pscreen+1
@ -366,7 +366,7 @@ sub: {
ldy #0
sta ($fe),y
// *(*dst)++ = ch;
// [7] *((const byte**) main::pscreen) ← ++ *((const byte**) main::pscreen) -- _deref_pptc1=_inc__deref_pptc1
// [7] *((const byte**) main::pscreen) ← ++ *((const byte**) main::pscreen) -- _deref_qbuc1=_inc__deref_qbuc1
inc.z main.pscreen
bne !+
inc.z main.pscreen+1

View File

@ -185,7 +185,7 @@ main: {
// sub(byte zp(2) ch)
sub: {
.label ch = 2
// [6] *(*(&(volatile byte*) main::screen)) ← (byte) sub::ch#2 -- _deref_(_deref_pptc1)=vbuz1
// [6] *(*(&(volatile byte*) main::screen)) ← (byte) sub::ch#2 -- _deref_(_deref_qbuc1)=vbuz1
lda.z ch
ldy.z main.screen
sty.z $fe
@ -193,7 +193,7 @@ sub: {
sty.z $ff
ldy #0
sta ($fe),y
// [7] *(&(volatile byte*) main::screen) ← ++ *(&(volatile byte*) main::screen) -- _deref_pptc1=_inc__deref_pptc1
// [7] *(&(volatile byte*) main::screen) ← ++ *(&(volatile byte*) main::screen) -- _deref_qbuc1=_inc__deref_qbuc1
inc.z main.screen
bne !+
inc.z main.screen+1
@ -265,14 +265,14 @@ main: {
// sub
// sub(byte register(A) ch)
sub: {
// [6] *(*(&(volatile byte*) main::screen)) ← (byte) sub::ch#2 -- _deref_(_deref_pptc1)=vbuaa
// [6] *(*(&(volatile byte*) main::screen)) ← (byte) sub::ch#2 -- _deref_(_deref_qbuc1)=vbuaa
ldy.z main.screen
sty.z $fe
ldy.z main.screen+1
sty.z $ff
ldy #0
sta ($fe),y
// [7] *(&(volatile byte*) main::screen) ← ++ *(&(volatile byte*) main::screen) -- _deref_pptc1=_inc__deref_pptc1
// [7] *(&(volatile byte*) main::screen) ← ++ *(&(volatile byte*) main::screen) -- _deref_qbuc1=_inc__deref_qbuc1
inc.z main.screen
bne !+
inc.z main.screen+1
@ -357,7 +357,7 @@ main: {
// sub(byte register(A) ch)
sub: {
// *(*dst)++ = ch
// [6] *(*(&(volatile byte*) main::screen)) ← (byte) sub::ch#2 -- _deref_(_deref_pptc1)=vbuaa
// [6] *(*(&(volatile byte*) main::screen)) ← (byte) sub::ch#2 -- _deref_(_deref_qbuc1)=vbuaa
ldy.z main.screen
sty.z $fe
ldy.z main.screen+1
@ -365,7 +365,7 @@ sub: {
ldy #0
sta ($fe),y
// *(*dst)++ = ch;
// [7] *(&(volatile byte*) main::screen) ← ++ *(&(volatile byte*) main::screen) -- _deref_pptc1=_inc__deref_pptc1
// [7] *(&(volatile byte*) main::screen) ← ++ *(&(volatile byte*) main::screen) -- _deref_qbuc1=_inc__deref_qbuc1
inc.z main.screen
bne !+
inc.z main.screen+1

View File

@ -4964,7 +4964,7 @@ main: {
lda.z bucket_idx
asl
sta.z __23
// [30] (word*) main::bucket#0 ← *((word**)(void*) BUCKETS#0 + (byte~) main::$23) -- pwuz1=pptz2_derefidx_vbuz3
// [30] (word*) main::bucket#0 ← *((word**)(void*) BUCKETS#0 + (byte~) main::$23) -- pwuz1=qwuz2_derefidx_vbuz3
ldy.z __23
lda (BUCKETS),y
sta.z bucket
@ -5748,7 +5748,7 @@ init_buckets: {
lda.z i2+1
rol
sta.z __11+1
// [144] (word**~) init_buckets::$16 ← (word**)(void*) BUCKETS#0 + (word~) init_buckets::$11 -- pptz1=pptz2_plus_vwuz3
// [144] (word**~) init_buckets::$16 ← (word**)(void*) BUCKETS#0 + (word~) init_buckets::$11 -- qwuz1=qwuz2_plus_vwuz3
lda.z BUCKETS
clc
adc.z __11
@ -5756,7 +5756,7 @@ init_buckets: {
lda.z BUCKETS+1
adc.z __11+1
sta.z __16+1
// [145] *((word**~) init_buckets::$16) ← (word*)(void*~) init_buckets::$4 -- _deref_pptz1=pwuz2
// [145] *((word**~) init_buckets::$16) ← (word*)(void*~) init_buckets::$4 -- _deref_qwuz1=pwuz2
ldy #0
lda.z __4
sta (__16),y
@ -5838,7 +5838,7 @@ init_buckets: {
lda.z __14+1
rol
sta.z __12+1
// [157] (word**~) init_buckets::$17 ← (word**)(void*) BUCKETS#0 + (word~) init_buckets::$12 -- pptz1=pptz2_plus_vwuz3
// [157] (word**~) init_buckets::$17 ← (word**)(void*) BUCKETS#0 + (word~) init_buckets::$12 -- qwuz1=qwuz2_plus_vwuz3
lda.z BUCKETS
clc
adc.z __12
@ -5846,7 +5846,7 @@ init_buckets: {
lda.z BUCKETS+1
adc.z __12+1
sta.z __17+1
// [158] (word*) init_buckets::bucket#0 ← *((word**~) init_buckets::$17) -- pwuz1=_deref_pptz2
// [158] (word*) init_buckets::bucket#0 ← *((word**~) init_buckets::$17) -- pwuz1=_deref_qwuz2
ldy #0
lda (__17),y
sta.z bucket
@ -7534,7 +7534,7 @@ main: {
// [29] (byte~) main::$23 ← (byte) main::bucket_idx#6 << (byte) 1 -- vbuaa=vbuz1_rol_1
lda.z bucket_idx
asl
// [30] (word*) main::bucket#0 ← *((word**)(void*) BUCKETS#0 + (byte~) main::$23) -- pwuz1=pptz2_derefidx_vbuaa
// [30] (word*) main::bucket#0 ← *((word**)(void*) BUCKETS#0 + (byte~) main::$23) -- pwuz1=qwuz2_derefidx_vbuaa
tay
lda (BUCKETS),y
sta.z bucket
@ -8228,7 +8228,7 @@ init_buckets: {
lda.z i2+1
rol
sta.z __11+1
// [144] (word**~) init_buckets::$16 ← (word**)(void*) BUCKETS#0 + (word~) init_buckets::$11 -- pptz1=pptz2_plus_vwuz1
// [144] (word**~) init_buckets::$16 ← (word**)(void*) BUCKETS#0 + (word~) init_buckets::$11 -- qwuz1=qwuz2_plus_vwuz1
lda.z __16
clc
adc.z BUCKETS
@ -8236,7 +8236,7 @@ init_buckets: {
lda.z __16+1
adc.z BUCKETS+1
sta.z __16+1
// [145] *((word**~) init_buckets::$16) ← (word*)(void*~) init_buckets::$4 -- _deref_pptz1=pwuz2
// [145] *((word**~) init_buckets::$16) ← (word*)(void*~) init_buckets::$4 -- _deref_qwuz1=pwuz2
ldy #0
lda.z __4
sta (__16),y
@ -8311,7 +8311,7 @@ init_buckets: {
// [156] (word~) init_buckets::$12 ← (word~) init_buckets::$14 << (byte) 1 -- vwuz1=vwuz1_rol_1
asl.z __12
rol.z __12+1
// [157] (word**~) init_buckets::$17 ← (word**)(void*) BUCKETS#0 + (word~) init_buckets::$12 -- pptz1=pptz2_plus_vwuz1
// [157] (word**~) init_buckets::$17 ← (word**)(void*) BUCKETS#0 + (word~) init_buckets::$12 -- qwuz1=qwuz2_plus_vwuz1
lda.z __17
clc
adc.z BUCKETS
@ -8319,7 +8319,7 @@ init_buckets: {
lda.z __17+1
adc.z BUCKETS+1
sta.z __17+1
// [158] (word*) init_buckets::bucket#0 ← *((word**~) init_buckets::$17) -- pwuz1=_deref_pptz1
// [158] (word*) init_buckets::bucket#0 ← *((word**~) init_buckets::$17) -- pwuz1=_deref_qwuz1
ldy #0
lda (bucket),y
pha
@ -10043,7 +10043,7 @@ main: {
// [29] (byte~) main::$23 ← (byte) main::bucket_idx#6 << (byte) 1 -- vbuaa=vbuz1_rol_1
lda.z bucket_idx
asl
// [30] (word*) main::bucket#0 ← *((word**)(void*) BUCKETS#0 + (byte~) main::$23) -- pwuz1=pptz2_derefidx_vbuaa
// [30] (word*) main::bucket#0 ← *((word**)(void*) BUCKETS#0 + (byte~) main::$23) -- pwuz1=qwuz2_derefidx_vbuaa
tay
lda (BUCKETS),y
sta.z bucket
@ -10722,7 +10722,7 @@ init_buckets: {
lda.z i2+1
rol
sta.z __11+1
// [144] (word**~) init_buckets::$16 ← (word**)(void*) BUCKETS#0 + (word~) init_buckets::$11 -- pptz1=pptz2_plus_vwuz1
// [144] (word**~) init_buckets::$16 ← (word**)(void*) BUCKETS#0 + (word~) init_buckets::$11 -- qwuz1=qwuz2_plus_vwuz1
lda.z __16
clc
adc.z BUCKETS
@ -10730,7 +10730,7 @@ init_buckets: {
lda.z __16+1
adc.z BUCKETS+1
sta.z __16+1
// [145] *((word**~) init_buckets::$16) ← (word*)(void*~) init_buckets::$4 -- _deref_pptz1=pwuz2
// [145] *((word**~) init_buckets::$16) ← (word*)(void*~) init_buckets::$4 -- _deref_qwuz1=pwuz2
ldy #0
lda.z __4
sta (__16),y
@ -10798,7 +10798,7 @@ init_buckets: {
// [156] (word~) init_buckets::$12 ← (word~) init_buckets::$14 << (byte) 1 -- vwuz1=vwuz1_rol_1
asl.z __12
rol.z __12+1
// [157] (word**~) init_buckets::$17 ← (word**)(void*) BUCKETS#0 + (word~) init_buckets::$12 -- pptz1=pptz2_plus_vwuz1
// [157] (word**~) init_buckets::$17 ← (word**)(void*) BUCKETS#0 + (word~) init_buckets::$12 -- qwuz1=qwuz2_plus_vwuz1
lda.z __17
clc
adc.z BUCKETS
@ -10806,7 +10806,7 @@ init_buckets: {
lda.z __17+1
adc.z BUCKETS+1
sta.z __17+1
// [158] (word*) init_buckets::bucket#0 ← *((word**~) init_buckets::$17) -- pwuz1=_deref_pptz1
// [158] (word*) init_buckets::bucket#0 ← *((word**~) init_buckets::$17) -- pwuz1=_deref_qwuz1
lda (bucket),y
pha
iny

View File

@ -5616,7 +5616,7 @@ initEntry: {
lda #>$1111
adc #0
sta.z __1+1
// [77] *((byte**)(byte*) initEntry::entry#10) ← (byte*)(word~) initEntry::$1 -- _deref_pptz1=pbuz2
// [77] *((byte**)(byte*) initEntry::entry#10) ← (byte*)(word~) initEntry::$1 -- _deref_qbuz1=pbuz2
ldy #0
lda.z __1
sta (entry),y
@ -5639,7 +5639,7 @@ initEntry: {
lda #>$2222
adc #0
sta.z __3+1
// [80] *((byte**)(byte*) initEntry::entry#10 + (byte) 2) ← (byte*)(word~) initEntry::$3 -- pptz1_derefidx_vbuc1=pbuz2
// [80] *((byte**)(byte*) initEntry::entry#10 + (byte) 2) ← (byte*)(word~) initEntry::$3 -- qbuz1_derefidx_vbuc1=pbuz2
ldy #2
lda.z __3
sta (entry),y
@ -5685,7 +5685,7 @@ initEntry: {
lda #>$4444
adc #0
sta.z __7+1
// [86] *((word**)(byte*) initEntry::entry#10 + (byte) 6) ← (word*)(word~) initEntry::$7 -- pptz1_derefidx_vbuc1=pwuz2
// [86] *((word**)(byte*) initEntry::entry#10 + (byte) 6) ← (word*)(word~) initEntry::$7 -- qwuz1_derefidx_vbuc1=pwuz2
ldy #6
lda.z __7
sta (entry),y
@ -7699,7 +7699,7 @@ initEntry: {
lda #>$1111
adc #0
sta.z __1+1
// [77] *((byte**)(byte*) initEntry::entry#10) ← (byte*)(word~) initEntry::$1 -- _deref_pptz1=pbuz2
// [77] *((byte**)(byte*) initEntry::entry#10) ← (byte*)(word~) initEntry::$1 -- _deref_qbuz1=pbuz2
ldy #0
lda.z __1
sta (entry),y
@ -7722,7 +7722,7 @@ initEntry: {
lda #>$2222
adc #0
sta.z __3+1
// [80] *((byte**)(byte*) initEntry::entry#10 + (byte) 2) ← (byte*)(word~) initEntry::$3 -- pptz1_derefidx_vbuc1=pbuz2
// [80] *((byte**)(byte*) initEntry::entry#10 + (byte) 2) ← (byte*)(word~) initEntry::$3 -- qbuz1_derefidx_vbuc1=pbuz2
ldy #2
lda.z __3
sta (entry),y
@ -7768,7 +7768,7 @@ initEntry: {
lda #>$4444
adc #0
sta.z __7+1
// [86] *((word**)(byte*) initEntry::entry#10 + (byte) 6) ← (word*)(word~) initEntry::$7 -- pptz1_derefidx_vbuc1=pwuz2
// [86] *((word**)(byte*) initEntry::entry#10 + (byte) 6) ← (word*)(word~) initEntry::$7 -- qwuz1_derefidx_vbuc1=pwuz2
ldy #6
lda.z __7
sta (entry),y
@ -10244,7 +10244,7 @@ initEntry: {
adc #0
sta.z __1+1
// *entryBufDisk(entry) = 0x1111+n
// [77] *((byte**)(byte*) initEntry::entry#10) ← (byte*)(word~) initEntry::$1 -- _deref_pptz1=pbuz2
// [77] *((byte**)(byte*) initEntry::entry#10) ← (byte*)(word~) initEntry::$1 -- _deref_qbuz1=pbuz2
ldy #0
lda.z __1
sta (entry),y
@ -10264,7 +10264,7 @@ initEntry: {
adc #0
sta.z __3+1
// *entryBufEdit(entry) = 0x2222+n
// [80] *((byte**)(byte*) initEntry::entry#10 + (byte) 2) ← (byte*)(word~) initEntry::$3 -- pptz1_derefidx_vbuc1=pbuz2
// [80] *((byte**)(byte*) initEntry::entry#10 + (byte) 2) ← (byte*)(word~) initEntry::$3 -- qbuz1_derefidx_vbuc1=pbuz2
ldy #2
lda.z __3
sta (entry),y
@ -10304,7 +10304,7 @@ initEntry: {
adc #0
sta.z __7+1
// *entryTsOrder(entry) = 0x4444+n
// [86] *((word**)(byte*) initEntry::entry#10 + (byte) 6) ← (word*)(word~) initEntry::$7 -- pptz1_derefidx_vbuc1=pwuz2
// [86] *((word**)(byte*) initEntry::entry#10 + (byte) 6) ← (word*)(word~) initEntry::$7 -- qwuz1_derefidx_vbuc1=pwuz2
ldy #6
lda.z __7
sta (entry),y

View File

@ -323,7 +323,7 @@ Target platform is c64basic / MOS6502X
main: {
.const jesper_id = 4
.const henriette_id = 7
// [0] *((const byte*) main::jesper_name) ← memcpy(*(&(const byte*) $0), byte, (number) $40) -- _deref_pbuc1=_deref_pptc2_memcpy_vbuc3
// [0] *((const byte*) main::jesper_name) ← memcpy(*(&(const byte*) $0), byte, (number) $40) -- _deref_pbuc1=_deref_qbuc2_memcpy_vbuc3
ldy #$40
!:
lda __0-1,y
@ -348,7 +348,7 @@ main: {
jmp __b1
// main::@1
__b1:
// [2] *((const byte*) main::henriette_name) ← memcpy(*(&(const byte*) $1), byte, (number) $40) -- _deref_pbuc1=_deref_pptc2_memcpy_vbuc3
// [2] *((const byte*) main::henriette_name) ← memcpy(*(&(const byte*) $1), byte, (number) $40) -- _deref_pbuc1=_deref_qbuc2_memcpy_vbuc3
ldy #$40
!:
lda __1-1,y
@ -513,7 +513,7 @@ ASSEMBLER BEFORE OPTIMIZATION
main: {
.const jesper_id = 4
.const henriette_id = 7
// [0] *((const byte*) main::jesper_name) ← memcpy(*(&(const byte*) $0), byte, (number) $40) -- _deref_pbuc1=_deref_pptc2_memcpy_vbuc3
// [0] *((const byte*) main::jesper_name) ← memcpy(*(&(const byte*) $0), byte, (number) $40) -- _deref_pbuc1=_deref_qbuc2_memcpy_vbuc3
ldy #$40
!:
lda __0-1,y
@ -537,7 +537,7 @@ main: {
jmp __b1
// main::@1
__b1:
// [2] *((const byte*) main::henriette_name) ← memcpy(*(&(const byte*) $1), byte, (number) $40) -- _deref_pbuc1=_deref_pptc2_memcpy_vbuc3
// [2] *((const byte*) main::henriette_name) ← memcpy(*(&(const byte*) $1), byte, (number) $40) -- _deref_pbuc1=_deref_qbuc2_memcpy_vbuc3
ldy #$40
!:
lda __1-1,y
@ -709,7 +709,7 @@ main: {
.const jesper_id = 4
.const henriette_id = 7
// jesper = { 4, "jesper" }
// [0] *((const byte*) main::jesper_name) ← memcpy(*(&(const byte*) $0), byte, (number) $40) -- _deref_pbuc1=_deref_pptc2_memcpy_vbuc3
// [0] *((const byte*) main::jesper_name) ← memcpy(*(&(const byte*) $0), byte, (number) $40) -- _deref_pbuc1=_deref_qbuc2_memcpy_vbuc3
ldy #$40
!:
lda __0-1,y
@ -732,7 +732,7 @@ main: {
jsr print_person
// main::@1
// henriette = { 7, "henriette" }
// [2] *((const byte*) main::henriette_name) ← memcpy(*(&(const byte*) $1), byte, (number) $40) -- _deref_pbuc1=_deref_pptc2_memcpy_vbuc3
// [2] *((const byte*) main::henriette_name) ← memcpy(*(&(const byte*) $1), byte, (number) $40) -- _deref_pbuc1=_deref_qbuc2_memcpy_vbuc3
ldy #$40
!:
lda __1-1,y

View File

@ -108,7 +108,7 @@ Target platform is c64basic / MOS6502X
// main
main: {
.const point1_x = 2
// [0] *((const byte*) main::point1_initials) ← memcpy(*(&(const byte*) $0), byte, (number) 3) -- _deref_pbuc1=_deref_pptc2_memcpy_vbuc3
// [0] *((const byte*) main::point1_initials) ← memcpy(*(&(const byte*) $0), byte, (number) 3) -- _deref_pbuc1=_deref_qbuc2_memcpy_vbuc3
ldy #3
!:
lda __0-1,y
@ -162,7 +162,7 @@ ASSEMBLER BEFORE OPTIMIZATION
// main
main: {
.const point1_x = 2
// [0] *((const byte*) main::point1_initials) ← memcpy(*(&(const byte*) $0), byte, (number) 3) -- _deref_pbuc1=_deref_pptc2_memcpy_vbuc3
// [0] *((const byte*) main::point1_initials) ← memcpy(*(&(const byte*) $0), byte, (number) 3) -- _deref_pbuc1=_deref_qbuc2_memcpy_vbuc3
ldy #3
!:
lda __0-1,y
@ -222,7 +222,7 @@ Score: 44
main: {
.const point1_x = 2
// point1 = { 2, "jg" }
// [0] *((const byte*) main::point1_initials) ← memcpy(*(&(const byte*) $0), byte, (number) 3) -- _deref_pbuc1=_deref_pptc2_memcpy_vbuc3
// [0] *((const byte*) main::point1_initials) ← memcpy(*(&(const byte*) $0), byte, (number) 3) -- _deref_pbuc1=_deref_qbuc2_memcpy_vbuc3
ldy #3
!:
lda __0-1,y

View File

@ -208,7 +208,7 @@ main: {
lda.z i
asl
sta.z __1
// [5] *((const nomodify word*) SCREEN + (byte~) main::$1) ← *(*((word**)(const struct Setting*) settings+(const byte) OFFSET_STRUCT_SETTING_BUF) + (byte~) main::$1) -- pwuc1_derefidx_vbuz1=(_deref_pptc2)_derefidx_vbuz1
// [5] *((const nomodify word*) SCREEN + (byte~) main::$1) ← *(*((word**)(const struct Setting*) settings+(const byte) OFFSET_STRUCT_SETTING_BUF) + (byte~) main::$1) -- pwuc1_derefidx_vbuz1=(_deref_qwuc2)_derefidx_vbuz1
ldy.z __1
lda settings+OFFSET_STRUCT_SETTING_BUF
sta.z $fe
@ -282,7 +282,7 @@ main: {
// [4] (byte~) main::$1 ← (byte) main::i#2 << (byte) 1 -- vbuaa=vbuxx_rol_1
txa
asl
// [5] *((const nomodify word*) SCREEN + (byte~) main::$1) ← *(*((word**)(const struct Setting*) settings+(const byte) OFFSET_STRUCT_SETTING_BUF) + (byte~) main::$1) -- pwuc1_derefidx_vbuaa=(_deref_pptc2)_derefidx_vbuaa
// [5] *((const nomodify word*) SCREEN + (byte~) main::$1) ← *(*((word**)(const struct Setting*) settings+(const byte) OFFSET_STRUCT_SETTING_BUF) + (byte~) main::$1) -- pwuc1_derefidx_vbuaa=(_deref_qwuc2)_derefidx_vbuaa
tay
lda settings+OFFSET_STRUCT_SETTING_BUF
sta.z $fe
@ -367,7 +367,7 @@ main: {
// [4] (byte~) main::$1 ← (byte) main::i#2 << (byte) 1 -- vbuaa=vbuxx_rol_1
txa
asl
// [5] *((const nomodify word*) SCREEN + (byte~) main::$1) ← *(*((word**)(const struct Setting*) settings+(const byte) OFFSET_STRUCT_SETTING_BUF) + (byte~) main::$1) -- pwuc1_derefidx_vbuaa=(_deref_pptc2)_derefidx_vbuaa
// [5] *((const nomodify word*) SCREEN + (byte~) main::$1) ← *(*((word**)(const struct Setting*) settings+(const byte) OFFSET_STRUCT_SETTING_BUF) + (byte~) main::$1) -- pwuc1_derefidx_vbuaa=(_deref_qwuc2)_derefidx_vbuaa
tay
lda settings+OFFSET_STRUCT_SETTING_BUF
sta.z $fe

View File

@ -970,12 +970,12 @@ Target platform is c64basic / MOS6502X
// main
main: {
.label __13 = $c
// [0] *((byte**)(const struct fileentry*) files) ← (byte*) 16384 -- _deref_pptc1=pbuc2
// [0] *((byte**)(const struct fileentry*) files) ← (byte*) 16384 -- _deref_qbuc1=pbuc2
lda #<$4000
sta files
lda #>$4000
sta files+1
// [1] *(*((byte**)(const struct fileentry*) files) + (byte) 3) ← (byte) $aa -- (_deref_pptc1)_derefidx_vbuc2=vbuc3
// [1] *(*((byte**)(const struct fileentry*) files) + (byte) 3) ← (byte) $aa -- (_deref_qbuc1)_derefidx_vbuc2=vbuc3
lda #$aa
ldy #3
ldx files
@ -983,7 +983,7 @@ main: {
ldx files+1
stx.z $ff
sta ($fe),y
// [2] (byte*~) main::$13 ← *((byte**)(const struct fileentry*) files) -- pbuz1=_deref_pptc1
// [2] (byte*~) main::$13 ← *((byte**)(const struct fileentry*) files) -- pbuz1=_deref_qbuc1
lda files
sta.z __13
lda files+1
@ -1384,12 +1384,12 @@ ASSEMBLER BEFORE OPTIMIZATION
// main
main: {
.label __13 = 6
// [0] *((byte**)(const struct fileentry*) files) ← (byte*) 16384 -- _deref_pptc1=pbuc2
// [0] *((byte**)(const struct fileentry*) files) ← (byte*) 16384 -- _deref_qbuc1=pbuc2
lda #<$4000
sta files
lda #>$4000
sta files+1
// [1] *(*((byte**)(const struct fileentry*) files) + (byte) 3) ← (byte) $aa -- (_deref_pptc1)_derefidx_vbuc2=vbuc3
// [1] *(*((byte**)(const struct fileentry*) files) + (byte) 3) ← (byte) $aa -- (_deref_qbuc1)_derefidx_vbuc2=vbuc3
lda #$aa
ldy #3
ldx files
@ -1397,7 +1397,7 @@ main: {
ldx files+1
stx.z $ff
sta ($fe),y
// [2] (byte*~) main::$13 ← *((byte**)(const struct fileentry*) files) -- pbuz1=_deref_pptc1
// [2] (byte*~) main::$13 ← *((byte**)(const struct fileentry*) files) -- pbuz1=_deref_qbuc1
lda files
sta.z __13
lda files+1
@ -1869,13 +1869,13 @@ Score: 1497
main: {
.label __13 = 6
// file->bufEdit = 0x4000
// [0] *((byte**)(const struct fileentry*) files) ← (byte*) 16384 -- _deref_pptc1=pbuc2
// [0] *((byte**)(const struct fileentry*) files) ← (byte*) 16384 -- _deref_qbuc1=pbuc2
lda #<$4000
sta files
lda #>$4000
sta files+1
// file->bufEdit[3] = 0xAA
// [1] *(*((byte**)(const struct fileentry*) files) + (byte) 3) ← (byte) $aa -- (_deref_pptc1)_derefidx_vbuc2=vbuc3
// [1] *(*((byte**)(const struct fileentry*) files) + (byte) 3) ← (byte) $aa -- (_deref_qbuc1)_derefidx_vbuc2=vbuc3
lda #$aa
ldy #3
ldx files
@ -1884,7 +1884,7 @@ main: {
stx.z $ff
sta ($fe),y
// ((char *)file->bufEdit)[4] = 0xCC
// [2] (byte*~) main::$13 ← *((byte**)(const struct fileentry*) files) -- pbuz1=_deref_pptc1
// [2] (byte*~) main::$13 ← *((byte**)(const struct fileentry*) files) -- pbuz1=_deref_qbuc1
lda files
sta.z __13
lda files+1

View File

@ -452,12 +452,12 @@ Target platform is c64basic / MOS6502X
main: {
.label file = $4000
.label uSize = 6
// [0] *((byte**)(const struct fileentry*) main::file#1) ← (byte*) 4 -- _deref_pptc1=pbuc2
// [0] *((byte**)(const struct fileentry*) main::file#1) ← (byte*) 4 -- _deref_qbuc1=pbuc2
lda #<4
sta file
lda #>4
sta file+1
// [1] (word) main::uSize#1 ← *((word*)*((byte**)(const struct fileentry*) main::file#1) + (byte) $1e) -- vwuz1=(_deref_pptc1)_derefidx_vbuc2
// [1] (word) main::uSize#1 ← *((word*)*((byte**)(const struct fileentry*) main::file#1) + (byte) $1e) -- vwuz1=(_deref_qwuc1)_derefidx_vbuc2
ldy #$1e
lda file
sta.z $fe
@ -646,12 +646,12 @@ ASSEMBLER BEFORE OPTIMIZATION
main: {
.label file = $4000
.label uSize = 4
// [0] *((byte**)(const struct fileentry*) main::file#1) ← (byte*) 4 -- _deref_pptc1=pbuc2
// [0] *((byte**)(const struct fileentry*) main::file#1) ← (byte*) 4 -- _deref_qbuc1=pbuc2
lda #<4
sta file
lda #>4
sta file+1
// [1] (word) main::uSize#1 ← *((word*)*((byte**)(const struct fileentry*) main::file#1) + (byte) $1e) -- vwuz1=(_deref_pptc1)_derefidx_vbuc2
// [1] (word) main::uSize#1 ← *((word*)*((byte**)(const struct fileentry*) main::file#1) + (byte) $1e) -- vwuz1=(_deref_qwuc1)_derefidx_vbuc2
ldy #$1e
lda file
sta.z $fe
@ -856,13 +856,13 @@ main: {
.label file = $4000
.label uSize = 4
// file->bufEdit = 4
// [0] *((byte**)(const struct fileentry*) main::file#1) ← (byte*) 4 -- _deref_pptc1=pbuc2
// [0] *((byte**)(const struct fileentry*) main::file#1) ← (byte*) 4 -- _deref_qbuc1=pbuc2
lda #<4
sta file
lda #>4
sta file+1
// uSize = *ptrw
// [1] (word) main::uSize#1 ← *((word*)*((byte**)(const struct fileentry*) main::file#1) + (byte) $1e) -- vwuz1=(_deref_pptc1)_derefidx_vbuc2
// [1] (word) main::uSize#1 ← *((word*)*((byte**)(const struct fileentry*) main::file#1) + (byte) $1e) -- vwuz1=(_deref_qwuc1)_derefidx_vbuc2
ldy #$1e
lda file
sta.z $fe

View File

@ -322,7 +322,7 @@ Target platform is c64basic / MOS6502X
main: {
.const jesper_id = 4
.const henriette_id = 7
// [0] *((const byte*) main::jesper_name) ← memcpy(*(&(const byte*) $0), byte, (number) $10) -- _deref_pbuc1=_deref_pptc2_memcpy_vbuc3
// [0] *((const byte*) main::jesper_name) ← memcpy(*(&(const byte*) $0), byte, (number) $10) -- _deref_pbuc1=_deref_qbuc2_memcpy_vbuc3
ldy #$10
!:
lda __0-1,y
@ -347,7 +347,7 @@ main: {
jmp __b1
// main::@1
__b1:
// [2] *((const byte*) main::henriette_name) ← memcpy(*(&(const byte*) $1), byte, (number) $10) -- _deref_pbuc1=_deref_pptc2_memcpy_vbuc3
// [2] *((const byte*) main::henriette_name) ← memcpy(*(&(const byte*) $1), byte, (number) $10) -- _deref_pbuc1=_deref_qbuc2_memcpy_vbuc3
ldy #$10
!:
lda __1-1,y
@ -511,7 +511,7 @@ ASSEMBLER BEFORE OPTIMIZATION
main: {
.const jesper_id = 4
.const henriette_id = 7
// [0] *((const byte*) main::jesper_name) ← memcpy(*(&(const byte*) $0), byte, (number) $10) -- _deref_pbuc1=_deref_pptc2_memcpy_vbuc3
// [0] *((const byte*) main::jesper_name) ← memcpy(*(&(const byte*) $0), byte, (number) $10) -- _deref_pbuc1=_deref_qbuc2_memcpy_vbuc3
ldy #$10
!:
lda __0-1,y
@ -535,7 +535,7 @@ main: {
jmp __b1
// main::@1
__b1:
// [2] *((const byte*) main::henriette_name) ← memcpy(*(&(const byte*) $1), byte, (number) $10) -- _deref_pbuc1=_deref_pptc2_memcpy_vbuc3
// [2] *((const byte*) main::henriette_name) ← memcpy(*(&(const byte*) $1), byte, (number) $10) -- _deref_pbuc1=_deref_qbuc2_memcpy_vbuc3
ldy #$10
!:
lda __1-1,y
@ -706,7 +706,7 @@ main: {
.const jesper_id = 4
.const henriette_id = 7
// jesper = { 4, "jesper" }
// [0] *((const byte*) main::jesper_name) ← memcpy(*(&(const byte*) $0), byte, (number) $10) -- _deref_pbuc1=_deref_pptc2_memcpy_vbuc3
// [0] *((const byte*) main::jesper_name) ← memcpy(*(&(const byte*) $0), byte, (number) $10) -- _deref_pbuc1=_deref_qbuc2_memcpy_vbuc3
ldy #$10
!:
lda __0-1,y
@ -729,7 +729,7 @@ main: {
jsr print_person
// main::@1
// henriette = { 7, "henriette" }
// [2] *((const byte*) main::henriette_name) ← memcpy(*(&(const byte*) $1), byte, (number) $10) -- _deref_pbuc1=_deref_pptc2_memcpy_vbuc3
// [2] *((const byte*) main::henriette_name) ← memcpy(*(&(const byte*) $1), byte, (number) $10) -- _deref_pbuc1=_deref_qbuc2_memcpy_vbuc3
ldy #$10
!:
lda __1-1,y

View File

@ -383,7 +383,7 @@ main: {
.label idx_2 = $a
.label idx_3 = 4
.label entry = 2
// [0] *((struct Entry**)(const struct Entry*) ENTRIES+(const byte) OFFSET_STRUCT_ENTRY_NEXT) ← (const struct Entry*) main::entry2#0 -- _deref_pptc1=pssc2
// [0] *((struct Entry**)(const struct Entry*) ENTRIES+(const byte) OFFSET_STRUCT_ENTRY_NEXT) ← (const struct Entry*) main::entry2#0 -- _deref_qssc1=pssc2
lda #<entry2
sta ENTRIES+OFFSET_STRUCT_ENTRY_NEXT
lda #>entry2
@ -391,7 +391,7 @@ main: {
// [1] *((byte*)(const struct Entry*) ENTRIES) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta ENTRIES
// [2] *((struct Entry**)(const struct Entry*) main::entry2#0+(const byte) OFFSET_STRUCT_ENTRY_NEXT) ← (const struct Entry*) main::entry1#0 -- _deref_pptc1=pssc2
// [2] *((struct Entry**)(const struct Entry*) main::entry2#0+(const byte) OFFSET_STRUCT_ENTRY_NEXT) ← (const struct Entry*) main::entry1#0 -- _deref_qssc1=pssc2
lda #<entry1
sta entry2+OFFSET_STRUCT_ENTRY_NEXT
lda #>entry1
@ -399,7 +399,7 @@ main: {
// [3] *((byte*)(const struct Entry*) main::entry2#0) ← (byte) 2 -- _deref_pbuc1=vbuc2
lda #2
sta entry2
// [4] *((struct Entry**)(const struct Entry*) main::entry1#0+(const byte) OFFSET_STRUCT_ENTRY_NEXT) ← (struct Entry*) 0 -- _deref_pptc1=pssc2
// [4] *((struct Entry**)(const struct Entry*) main::entry1#0+(const byte) OFFSET_STRUCT_ENTRY_NEXT) ← (struct Entry*) 0 -- _deref_qssc1=pssc2
lda #<0
sta entry1+OFFSET_STRUCT_ENTRY_NEXT
lda #>0
@ -448,7 +448,7 @@ main: {
ldy.z idx_3
iny
sty.z idx
// [12] (byte~) main::$3 ← < *((struct Entry**)(struct Entry*) main::entry#2 + (const byte) OFFSET_STRUCT_ENTRY_NEXT) -- vbuz1=_lo_pptz2_derefidx_vbuc1
// [12] (byte~) main::$3 ← < *((struct Entry**)(struct Entry*) main::entry#2 + (const byte) OFFSET_STRUCT_ENTRY_NEXT) -- vbuz1=_lo_qssz2_derefidx_vbuc1
ldy #OFFSET_STRUCT_ENTRY_NEXT
lda (entry),y
sta.z __3
@ -460,7 +460,7 @@ main: {
ldy.z idx
iny
sty.z idx_1
// [15] (byte~) main::$4 ← > *((struct Entry**)(struct Entry*) main::entry#2 + (const byte) OFFSET_STRUCT_ENTRY_NEXT) -- vbuz1=_hi_pptz2_derefidx_vbuc1
// [15] (byte~) main::$4 ← > *((struct Entry**)(struct Entry*) main::entry#2 + (const byte) OFFSET_STRUCT_ENTRY_NEXT) -- vbuz1=_hi_qssz2_derefidx_vbuc1
ldy #OFFSET_STRUCT_ENTRY_NEXT+1
lda (entry),y
sta.z __4
@ -480,7 +480,7 @@ main: {
ldy.z idx_2
iny
sty.z idx_3
// [20] (struct Entry*) main::entry#1 ← *((struct Entry**)(struct Entry*) main::entry#2 + (const byte) OFFSET_STRUCT_ENTRY_NEXT) -- pssz1=pptz1_derefidx_vbuc1
// [20] (struct Entry*) main::entry#1 ← *((struct Entry**)(struct Entry*) main::entry#2 + (const byte) OFFSET_STRUCT_ENTRY_NEXT) -- pssz1=qssz1_derefidx_vbuc1
ldy #OFFSET_STRUCT_ENTRY_NEXT
lda (entry),y
pha
@ -572,7 +572,7 @@ main: {
.label entry1 = ENTRIES+1*SIZEOF_STRUCT_ENTRY
.label entry2 = ENTRIES+2*SIZEOF_STRUCT_ENTRY
.label entry = 2
// [0] *((struct Entry**)(const struct Entry*) ENTRIES+(const byte) OFFSET_STRUCT_ENTRY_NEXT) ← (const struct Entry*) main::entry2#0 -- _deref_pptc1=pssc2
// [0] *((struct Entry**)(const struct Entry*) ENTRIES+(const byte) OFFSET_STRUCT_ENTRY_NEXT) ← (const struct Entry*) main::entry2#0 -- _deref_qssc1=pssc2
lda #<entry2
sta ENTRIES+OFFSET_STRUCT_ENTRY_NEXT
lda #>entry2
@ -580,7 +580,7 @@ main: {
// [1] *((byte*)(const struct Entry*) ENTRIES) ← (byte) 1 -- _deref_pbuc1=vbuc2
lda #1
sta ENTRIES
// [2] *((struct Entry**)(const struct Entry*) main::entry2#0+(const byte) OFFSET_STRUCT_ENTRY_NEXT) ← (const struct Entry*) main::entry1#0 -- _deref_pptc1=pssc2
// [2] *((struct Entry**)(const struct Entry*) main::entry2#0+(const byte) OFFSET_STRUCT_ENTRY_NEXT) ← (const struct Entry*) main::entry1#0 -- _deref_qssc1=pssc2
lda #<entry1
sta entry2+OFFSET_STRUCT_ENTRY_NEXT
lda #>entry1
@ -588,7 +588,7 @@ main: {
// [3] *((byte*)(const struct Entry*) main::entry2#0) ← (byte) 2 -- _deref_pbuc1=vbuc2
lda #2
sta entry2
// [4] *((struct Entry**)(const struct Entry*) main::entry1#0+(const byte) OFFSET_STRUCT_ENTRY_NEXT) ← (struct Entry*) 0 -- _deref_pptc1=pssc2
// [4] *((struct Entry**)(const struct Entry*) main::entry1#0+(const byte) OFFSET_STRUCT_ENTRY_NEXT) ← (struct Entry*) 0 -- _deref_qssc1=pssc2
lda #<0
sta entry1+OFFSET_STRUCT_ENTRY_NEXT
lda #>0
@ -631,14 +631,14 @@ main: {
sta SCREEN,x
// [11] (byte) main::idx#1 ← ++ (byte) main::idx#5 -- vbuxx=_inc_vbuxx
inx
// [12] (byte~) main::$3 ← < *((struct Entry**)(struct Entry*) main::entry#2 + (const byte) OFFSET_STRUCT_ENTRY_NEXT) -- vbuaa=_lo_pptz1_derefidx_vbuc1
// [12] (byte~) main::$3 ← < *((struct Entry**)(struct Entry*) main::entry#2 + (const byte) OFFSET_STRUCT_ENTRY_NEXT) -- vbuaa=_lo_qssz1_derefidx_vbuc1
ldy #OFFSET_STRUCT_ENTRY_NEXT
lda (entry),y
// [13] *((const nomodify byte*) main::SCREEN + (byte) main::idx#1) ← (byte~) main::$3 -- pbuc1_derefidx_vbuxx=vbuaa
sta SCREEN,x
// [14] (byte) main::idx#2 ← ++ (byte) main::idx#1 -- vbuxx=_inc_vbuxx
inx
// [15] (byte~) main::$4 ← > *((struct Entry**)(struct Entry*) main::entry#2 + (const byte) OFFSET_STRUCT_ENTRY_NEXT) -- vbuaa=_hi_pptz1_derefidx_vbuc1
// [15] (byte~) main::$4 ← > *((struct Entry**)(struct Entry*) main::entry#2 + (const byte) OFFSET_STRUCT_ENTRY_NEXT) -- vbuaa=_hi_qssz1_derefidx_vbuc1
ldy #OFFSET_STRUCT_ENTRY_NEXT+1
lda (entry),y
// [16] *((const nomodify byte*) main::SCREEN + (byte) main::idx#2) ← (byte~) main::$4 -- pbuc1_derefidx_vbuxx=vbuaa
@ -650,7 +650,7 @@ main: {
sta SCREEN,x
// [19] (byte) main::idx#4 ← ++ (byte) main::idx#3 -- vbuxx=_inc_vbuxx
inx
// [20] (struct Entry*) main::entry#1 ← *((struct Entry**)(struct Entry*) main::entry#2 + (const byte) OFFSET_STRUCT_ENTRY_NEXT) -- pssz1=pptz1_derefidx_vbuc1
// [20] (struct Entry*) main::entry#1 ← *((struct Entry**)(struct Entry*) main::entry#2 + (const byte) OFFSET_STRUCT_ENTRY_NEXT) -- pssz1=qssz1_derefidx_vbuc1
ldy #OFFSET_STRUCT_ENTRY_NEXT
lda (entry),y
pha
@ -738,7 +738,7 @@ main: {
.label entry2 = ENTRIES+2*SIZEOF_STRUCT_ENTRY
.label entry = 2
// entry0->next = entry2
// [0] *((struct Entry**)(const struct Entry*) ENTRIES+(const byte) OFFSET_STRUCT_ENTRY_NEXT) ← (const struct Entry*) main::entry2#0 -- _deref_pptc1=pssc2
// [0] *((struct Entry**)(const struct Entry*) ENTRIES+(const byte) OFFSET_STRUCT_ENTRY_NEXT) ← (const struct Entry*) main::entry2#0 -- _deref_qssc1=pssc2
lda #<entry2
sta ENTRIES+OFFSET_STRUCT_ENTRY_NEXT
lda #>entry2
@ -748,7 +748,7 @@ main: {
lda #1
sta ENTRIES
// entry2->next = entry1
// [2] *((struct Entry**)(const struct Entry*) main::entry2#0+(const byte) OFFSET_STRUCT_ENTRY_NEXT) ← (const struct Entry*) main::entry1#0 -- _deref_pptc1=pssc2
// [2] *((struct Entry**)(const struct Entry*) main::entry2#0+(const byte) OFFSET_STRUCT_ENTRY_NEXT) ← (const struct Entry*) main::entry1#0 -- _deref_qssc1=pssc2
lda #<entry1
sta entry2+OFFSET_STRUCT_ENTRY_NEXT
lda #>entry1
@ -758,7 +758,7 @@ main: {
lda #2
sta entry2
// entry1->next = 0
// [4] *((struct Entry**)(const struct Entry*) main::entry1#0+(const byte) OFFSET_STRUCT_ENTRY_NEXT) ← (struct Entry*) 0 -- _deref_pptc1=pssc2
// [4] *((struct Entry**)(const struct Entry*) main::entry1#0+(const byte) OFFSET_STRUCT_ENTRY_NEXT) ← (struct Entry*) 0 -- _deref_qssc1=pssc2
lda #<0
sta entry1+OFFSET_STRUCT_ENTRY_NEXT
sta entry1+OFFSET_STRUCT_ENTRY_NEXT+1
@ -803,7 +803,7 @@ main: {
// [11] (byte) main::idx#1 ← ++ (byte) main::idx#5 -- vbuxx=_inc_vbuxx
inx
// <entry->next
// [12] (byte~) main::$3 ← < *((struct Entry**)(struct Entry*) main::entry#2 + (const byte) OFFSET_STRUCT_ENTRY_NEXT) -- vbuaa=_lo_pptz1_derefidx_vbuc1
// [12] (byte~) main::$3 ← < *((struct Entry**)(struct Entry*) main::entry#2 + (const byte) OFFSET_STRUCT_ENTRY_NEXT) -- vbuaa=_lo_qssz1_derefidx_vbuc1
ldy #OFFSET_STRUCT_ENTRY_NEXT
lda (entry),y
// SCREEN[idx++] = <entry->next
@ -813,7 +813,7 @@ main: {
// [14] (byte) main::idx#2 ← ++ (byte) main::idx#1 -- vbuxx=_inc_vbuxx
inx
// >entry->next
// [15] (byte~) main::$4 ← > *((struct Entry**)(struct Entry*) main::entry#2 + (const byte) OFFSET_STRUCT_ENTRY_NEXT) -- vbuaa=_hi_pptz1_derefidx_vbuc1
// [15] (byte~) main::$4 ← > *((struct Entry**)(struct Entry*) main::entry#2 + (const byte) OFFSET_STRUCT_ENTRY_NEXT) -- vbuaa=_hi_qssz1_derefidx_vbuc1
ldy #OFFSET_STRUCT_ENTRY_NEXT+1
lda (entry),y
// SCREEN[idx++] = >entry->next
@ -830,7 +830,7 @@ main: {
// [19] (byte) main::idx#4 ← ++ (byte) main::idx#3 -- vbuxx=_inc_vbuxx
inx
// entry = entry->next
// [20] (struct Entry*) main::entry#1 ← *((struct Entry**)(struct Entry*) main::entry#2 + (const byte) OFFSET_STRUCT_ENTRY_NEXT) -- pssz1=pptz1_derefidx_vbuc1
// [20] (struct Entry*) main::entry#1 ← *((struct Entry**)(struct Entry*) main::entry#2 + (const byte) OFFSET_STRUCT_ENTRY_NEXT) -- pssz1=qssz1_derefidx_vbuc1
ldy #OFFSET_STRUCT_ENTRY_NEXT
lda (entry),y
pha

View File

@ -123,7 +123,7 @@ irq: {
}
// main
main: {
// [3] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [3] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq
@ -175,7 +175,7 @@ irq: {
}
// main
main: {
// [3] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [3] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq
@ -236,7 +236,7 @@ irq: {
// main
main: {
// *KERNEL_IRQ = &irq
// [3] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [3] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq

View File

@ -253,7 +253,7 @@ irq: {
}
// main
main: {
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq
@ -365,7 +365,7 @@ irq: {
}
// main
main: {
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq
@ -494,7 +494,7 @@ irq: {
// main
main: {
// *KERNEL_IRQ = &irq
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [11] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq

View File

@ -174,7 +174,7 @@ irq: {
}
// main
main: {
// [8] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [8] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq
@ -255,7 +255,7 @@ irq: {
}
// main
main: {
// [8] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [8] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq
@ -345,7 +345,7 @@ irq: {
// main
main: {
// *KERNEL_IRQ = &irq
// [8] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [8] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq

View File

@ -123,7 +123,7 @@ irq: {
}
// main
main: {
// [3] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [3] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq
@ -175,7 +175,7 @@ irq: {
}
// main
main: {
// [3] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [3] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq
@ -236,7 +236,7 @@ irq: {
// main
main: {
// *KERNEL_IRQ = &irq
// [3] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_pptc1=pprc2
// [3] *((const nomodify void()**) KERNEL_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq() -- _deref_qprc1=pprc2
lda #<irq
sta KERNEL_IRQ
lda #>irq

View File

@ -112,7 +112,7 @@ Target platform is c64basic / MOS6502X
// Unused Interrupt Routine
irq2: {
// entry interrupt(KERNEL_MIN)
// [0] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq1() -- _deref_pptc1=pprc2
// [0] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq1() -- _deref_qprc1=pprc2
lda #<irq1
sta HARDWARE_IRQ
lda #>irq1
@ -127,7 +127,7 @@ irq2: {
// Unused Interrupt Routine
irq1: {
// entry interrupt(KERNEL_MIN)
// [2] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq2() -- _deref_pptc1=pprc2
// [2] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq2() -- _deref_qprc1=pprc2
lda #<irq2
sta HARDWARE_IRQ
lda #>irq2
@ -181,7 +181,7 @@ ASSEMBLER BEFORE OPTIMIZATION
// Unused Interrupt Routine
irq2: {
// entry interrupt(KERNEL_MIN)
// [0] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq1() -- _deref_pptc1=pprc2
// [0] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq1() -- _deref_qprc1=pprc2
lda #<irq1
sta HARDWARE_IRQ
lda #>irq1
@ -196,7 +196,7 @@ irq2: {
// Unused Interrupt Routine
irq1: {
// entry interrupt(KERNEL_MIN)
// [2] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq2() -- _deref_pptc1=pprc2
// [2] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq2() -- _deref_qprc1=pprc2
lda #<irq2
sta HARDWARE_IRQ
lda #>irq2
@ -259,7 +259,7 @@ Score: 42
irq2: {
// entry interrupt(KERNEL_MIN)
// *HARDWARE_IRQ = &irq1
// [0] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq1() -- _deref_pptc1=pprc2
// [0] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq1() -- _deref_qprc1=pprc2
lda #<irq1
sta HARDWARE_IRQ
lda #>irq1
@ -274,7 +274,7 @@ irq2: {
irq1: {
// entry interrupt(KERNEL_MIN)
// *HARDWARE_IRQ = &irq2
// [2] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq2() -- _deref_pptc1=pprc2
// [2] *((const nomodify void()**) HARDWARE_IRQ) ← &interrupt(KERNEL_MIN)(void()) irq2() -- _deref_qprc1=pprc2
lda #<irq2
sta HARDWARE_IRQ
lda #>irq2