Advertisement
mariopicasso

Untitled

May 27th, 2022
1,720
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
ARM 1.20 KB | None | 0 0
  1. .equ SCREEN_WIDTH,      640
  2. .equ SCREEN_HEIGH,      480
  3. .equ BITS_PER_PIXEL,    32
  4.  
  5.  
  6. .globl main
  7. main:
  8.     // X0 contiene la direccion base del framebuffer
  9.     mov x20, x0 // Save framebuffer base address to x20
  10.     //---------------- CODE HERE ------------------------------------
  11.    
  12.     // COLORS
  13.     movz x10, 0x99, lsl 16
  14.     movk x10, 0xFFFF, lsl 00 // Ice
  15.  
  16.     movz x11, 0x80, lsl 16
  17.     movk x11, 0xFF00, lsl 00 // Snow
  18.  
  19. // PINTAR FONDO
  20.     mov x2, SCREEN_HEIGH         // Y Size
  21. loop1:
  22.     mov x1, SCREEN_WIDTH         // X Size
  23. loop0:
  24.     stur w10,[x0]      // Set color of pixel N
  25.     add x0,x0,4    // Next pixel
  26.     sub x1,x1,1    // decrement X counter
  27.     cbnz x1,loop0      // If not end row jump
  28.     sub x2,x2,1    // Decrement Y counter
  29.     cbnz x2,loop1      // if not last row, jump
  30.  
  31.  
  32. mov x0, x20 // Save frame
  33.     mov x2, SCREEN_HEIGH
  34. loop3:
  35.     mov x1, SCREEN_WIDTH
  36. loop4:
  37.     stur w11, [x0]
  38.     add x0,x0,4 // x0: la direccion base del framebuffer
  39.     sub x1,x1,1 // x1: ancho
  40.     cmp x1,120
  41.     bne loop3 // aca paso al segudno pixel enla misma fila
  42.  
  43.     sub x2,x2,1 // x2: alto
  44.     cmp x2,120
  45.     bne loop4 // aca paso a la otra fila
  46.  
  47.     //---------------------------------------------------------------
  48.     // Infinite Loop
  49.  
  50. InfLoop:
  51.     b InfLoop
  52.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement