Oskar Linde

Results 4 issues of Oskar Linde

```cpp #define CURSOR_X (*(uint8_t*) 0x00D3) #define CURRENT_LINE_SCREEN_RAM (*(uint8_t**) 0x00D1) void put_screencode(uint8_t sc) { uint8_t x = CURSOR_X; CURRENT_LINE_SCREEN_RAM[x] = sc; //asm volatile ("sta ($d1), y" :: "a" (sc), "y" (x));...

optimization
p2

There are sometimes redundant instructions generated. In some cases it’s easy with local reasoning to prove that they have no impact on any CPU register or status flag, but in...

optimization
p2

It may be a good idea to consider repeated increment/decrement operations for adding small constants to the X and Y registers instead of going through A and an ADC. I've...

optimization
p2

The Machine Outliner is a code size optimization that does the opposite of inlining – identifying globally common subexpressions and extracting them as functions. This has the potential to reduce...

optimization
p2