Author Topic: Grayscale Help  (Read 4381 times)

0 Members and 1 Guest are viewing this topic.

Offline Sue Doenim

  • LV2 Member (Next: 40)
  • **
  • Posts: 27
  • Rating: +0/-0
    • View Profile
Grayscale Help
« on: November 24, 2018, 02:54:15 pm »
I'm pretty new to ASM, but I have been working on a program, and so far I have mostly completed the title screen. The problem I'm running into is that I can't get my grayscale to work properly. The program I'm using is pretty close to the exact same thing as the example in thepenguin77's https://www.omnimaga.org/asm-language/perfect-grayscale-tutorial/, just reordered in a way that makes more sense to me. I think that the problem I'm running into is that the interrupt is only running once, and doesn't run after that at all. I've looked through it a lot, but I haven't been able to find the problem. Can anyone help me?
Code: [Select]
;note that this is all done in Mimas and that it is a work in progress, so there might be some kinda weird stuff
;#SECTION "MAIN", CODE

org userMem - 2
db 0BBh, 6Dh
mainMenu:
B_CALL _ClrLCDFull
di
; fast mode
ld a, 3
out (20h), a
; set up display
ld hl, 3A02h
ld (penCol), hl
ld hl, mainMenuOptions
B_CALL _VPutS
call LCD_BUSY_QUICK
ld a, 07h
out (10h), a
call LCD_BUSY_QUICK
ld a, 20h
out (10h), a
call LCD_BUSY_QUICK
ld a, 0BAh
out (10h), a
ld hl, buttonBorderData
ld b, 12
buttonBorders:
call LCD_BUSY_QUICK
ld a, (hl)
out (11h), a
inc hl
djnz buttonBorders
call LCD_BUSY_QUICK
ld a, 0B9h
out (10h), a
call LCD_BUSY_QUICK
ld a, 20h
out (10h), a
ld b, 12
ld a, 0FFh
solidLine:
call LCD_BUSY_QUICK
out (11h), a
djnz solidLine
; install interrupt
im 2
ld a, 99h
ld i, a
ld hl, 9900h
ld de, 9901h
ld bc, 256
ld (hl), 98h
ldir
ld a, 0C3h
ld (9898h), a
ld hl, interrupt
ld (9899h), hl
xor a
out (03h), a
ld a, 40h
out (30h), a
ld a, 2
out (31h), a
ld a, 178
out (32h), a
ei
mainMenuGetKey:
ld a, 10111111b
out (01h), a
nop
nop
nop
nop
in a, (01h)
rra
jr nc, exit
rra
jr nc, help
rra
jr nc, settings
rra
jr nc, loadGame
rra
jr nc, newGame
jr mainMenuGetKey

newGame:
loadGame:
settings:
help:
exit:
di
im 1
xor a
out (31h), a
ld a, 00001011b
out (03h), a
B_CALL _ClrLCDFull
ret

interrupt:
ex af, af'
exx
; timers and stuff
in a, (04h)
ld b, a
xor a
out (03h), a
bit 5, b
jr z, exitInterrupt
ld a, 40h
out (30h), a
ld a, 2
out (31h), a
ld a, (grayscaleCounter)
out (32h), a
ld hl, mainMenuPicData
; draw pic
ld a, (grayCarry)
rra
ld a, (grayMask)
push af
ld c, 80h
newRow:
call LCD_BUSY_QUICK
ld a, 20h
out (10h), a
call LCD_BUSY_QUICK
ld a, c
cp 0B9h
jr z, endDraw
out (10h), a
ld b, 12
ditherLoop:
pop af
rra
push af
ld d, a
and (hl)
ld e, a
inc hl
ld a, d
cpl
and (hl)
inc hl
or e
ld e, a
call LCD_BUSY_QUICK
ld a, e
out (11h), a
djnz ditherLoop
pop af
rla
push af
inc c
jr newRow

endDraw:
pop af
ld (grayMask), a
ld a, 0
rla
ld (grayCarry), a
call LCD_BUSY_QUICK
exitInterrupt:
ex af, af'
exx
ei
ret

; general data
grayCarry:
db 1
grayMask:
db 01101101b
mainMenuOptions:
db "New|Load|Settings|Help|Exit", 0
buttonBorderData:
db 00h, 00h, 80h, 00h, 20h, 00h, 00h, 01h, 00h, 00h, 80h, 00h
mainMenuPicData:
db 78h, 79h, 0D1h, 0EFh, 0C9h, 0ECh, 0BFh, 0BEh, 7Bh, 0E6h, 0FFh, 0BFh, 2Fh, 2Fh, 0FCh, 0E4h, 7Bh, 0E9h, 7Fh, 0B7h, 0FFh, 0FFh, 0EFh, 0FFh, 78h, 78h, 0C1h, 0FFh, 0E1h, 0EDh, 0BCh
db 3Fh, 0EEh, 6Eh, 0FCh, 0BEh, 6Fh, 2Fh, 0ECh, 0FCh, 0E7h, 0EDh, 3Fh, 7Fh, 0FFh, 0F7h, 0FFh, 0EFh, 0F8h, 78h, 0C1h, 6Fh, 0E4h, 0FDh, 38h, 0FCh, 0ECh, 6Eh, 0FEh, 0FEh, 7Fh, 0CFh
db 0E0h, 0D0h, 67h, 0EEh, 3Fh, 7Fh, 0FFh, 0F7h, 0FFh, 0FFh, 78h, 0F8h, 0C3h, 0C9h, 0ECh, 0C1h, 0B8h, 7Dh, 0ECh, 0F4h, 0FCh, 0FEh, 7Fh, 0FFh, 0E0h, 0E0h, 0E1h, 0EBh, 3Fh, 0F7h, 0F7h
db 0FFh, 0FFh, 0FFh, 0F8h, 78h, 0DFh, 87h, 0E8h, 0DDh, 0F8h, 0F8h, 0C9h, 0ECh, 0ECh, 0FCh, 4Bh, 77h, 0C0h, 0ECh, 0E3h, 0E5h, 0BFh, 0FFh, 0F7h, 0FFh, 0FFh, 0FFh, 0F8h, 0F8h, 0CFh, 73h
db 0E8h, 0E5h, 0F8h, 0BBh, 0C5h, 0CFh, 0CCh, 0CCh, 0C9h, 59h, 0C0h, 0E0h, 0E7h, 65h, 3Fh, 0BFh, 0F7h, 0EFh, 0FFh, 0FFh, 0F8h, 0FBh, 0CBh, 49h, 0E1h, 60h, 9Ah, 9Ah, 0CFh, 6Dh, 0Ch
db 8Eh, 81h, 59h, 0E0h, 0E0h, 0EEh, 0E7h, 3Fh, 0BAh, 0E7h, 0E7h, 0FFh, 0FFh, 0FFh, 0F4h, 0DBh, 5Fh, 0E0h, 61h, 0FDh, 0FAh, 0CEh, 0CDh, 0Ch, 0Eh, 41h, 93h, 73h, 0EDh, 0E6h, 0F5h
db 0F8h, 0B2h, 67h, 0CFh, 0FFh, 0FFh, 0FFh, 0FEh, 0DBh, 17h, 61h, 0ECh, 0F0h, 0F1h, 0C0h, 0C8h, 1Fh, 0Eh, 63h, 0D3h, 61h, 0C1h, 0E5h, 0F2h, 0FBh, 0F4h, 0EFh, 0F7h, 0BEh, 0FFh, 0FDh
db 0FCh, 0DBh, 29h, 6Bh, 0F5h, 0F1h, 0D0h, 0C2h, 0D1h, 9Fh, 5Eh, 83h, 54h, 41h, 0B9h, 0FCh, 0EBh, 0F3h, 0FFh, 0E7h, 0E7h, 0FFh, 0BFh, 0F8h, 0F8h, 13h, 63h, 67h, 0FBh, 0C0h, 0D0h
db 0C7h, 43h, 7Fh, 9Fh, 20h, 0D1h, 19h, 81h, 0FDh, 0F8h, 0F3h, 0FFh, 0E7h, 0E7h, 0FFh, 0FFh, 0F8h, 70h, 07h, 06h, 69h, 0E6h, 0C0h, 0F0h, 47h, 67h, 3Fh, 9Eh, 0Eh, 16h, 01h
db 0Dh, 0B8h, 0FDh, 0F3h, 0BBh, 0E7h, 0E7h, 0FFh, 0FFh, 0F0h, 78h, 07h, 02h, 70h, 80h, 0C0h, 0E0h, 27h, 59h, 3Fh, 1Eh, 0Eh, 0Eh, 01h, 07h, 0B8h, 80h, 0B1h, 0F9h, 0C7h, 0E7h
db 0FFh, 0FFh, 0F0h, 78h, 05h, 07h, 0C0h, 20h, 0C0h, 48h, 30h, 68h, 3Eh, 1Fh, 0Eh, 06h, 01h, 62h, 0B0h, 00h, 0B1h, 0B9h, 8Fh, 47h, 0FFh, 0FFh, 0F8h, 0F0h, 06h, 05h, 0C0h
db 0A0h, 0C8h, 58h, 30h, 40h, 3Ch, 3Eh, 46h, 46h, 43h, 23h, 0A0h, 60h, 0F1h, 0B9h, 0C7h, 47h, 0FFh, 0FFh, 78h, 0F8h, 43h, 45h, 81h, 80h, 0F0h, 40h, 30h, 30h, 38h, 3Ch
db 46h, 46h, 03h, 63h, 00h, 0E0h, 0B1h, 0F9h, 0E7h, 0C7h, 0FFh, 0FFh, 78h, 0F8h, 01h, 43h, 83h, 0C1h, 70h, 70h, 00h, 00h, 38h, 34h, 4Eh, 86h, 03h, 03h, 40h, 0C8h, 71h
db 38h, 87h, 0C7h, 0FFh, 0FEh, 78h, 0F8h, 01h, 11h, 0C6h, 0CCh, 0F0h, 74h, 00h, 00h, 38h, 34h, 0Eh, 0CEh, 03h, 03h, 0Ch, 4Ch, 70h, 0F8h, 47h, 87h, 0FFh, 0FFh, 78h, 0FCh
db 01h, 31h, 0C0h, 0C0h, 70h, 0E8h, 0C0h, 0C0h, 38h, 34h, 0Eh, 8Eh, 07h, 07h, 0Ch, 8Eh, 38h, 30h, 07h, 03h, 0FFh, 0FFh, 0F8h, 0FDh, 00h, 59h, 41h, 80h, 60h, 70h, 0C0h
db 0C2h, 38h, 34h, 8Eh, 06h, 07h, 0Fh, 8Ch, 1Ch, 38h, 38h, 07h, 07h, 0FFh, 0FFh, 0F8h, 0FCh, 50h, 50h, 42h, 0C6h, 60h, 0F0h, 0C0h, 0E0h, 3Ch, 3Ch, 1Eh, 8Ch, 03h, 43h
db 8Ch, 0Ch, 39h, 39h, 07h, 07h, 0FFh, 0FFh, 0F8h, 0BCh, 58h, 78h, 0C0h, 60h, 0E0h, 60h, 0E0h, 0C0h, 34h, 38h, 1Eh, 1Ch, 63h, 23h, 8Ch, 1Ch, 39h, 0B9h, 87h, 87h, 0FFh
db 0FFh, 0F8h, 0FCh, 78h, 68h, 60h, 0C0h, 60h, 68h, 0E0h, 0E0h, 1Ch, 58h, 1Eh, 3Eh, 23h, 63h, 0Ch, 8Eh, 38h, 39h, 0F7h, 0C7h, 0FFh, 0FFh, 0BCh, 0B8h, 50h, 70h, 0E0h, 0E0h
db 79h, 0F8h, 0F0h, 0F0h, 3Ch, 18h, 0FEh, 7Ch, 63h, 0A3h, 8Eh, 04h, 78h, 39h, 0F7h, 0F7h, 0FDh, 0FEh, 38h, 3Ch, 40h, 70h, 0E7h, 0E0h, 0F7h, 0EFh, 0E0h, 0C0h, 3Dh, 3Dh, 9Eh
db 7Ch, 33h, 07h, 80h, 80h, 38h, 58h, 8Fh, 0D7h, 0FCh, 0FDh, 78h, 7Ah, 01h, 01h, 0FAh, 0E4h, 0C3h, 0F3h, 0C0h, 0E0h, 38h, 3Fh, 1Ch, 0BEh, 17h, 4Bh, 0A0h, 0C0h, 3Ch, 3Ah
db 0CFh, 97h, 0FDh, 0FAh, 3Eh, 3Ch, 01h, 01h, 0E0h, 0E0h, 0C3h, 0C3h, 0A0h, 80h, 3Eh, 78h, 0BCh, 0FEh, 23h, 8Fh, 30h, 38h, 3Eh, 7Eh, 0C7h, 0BFh, 0FFh, 0FFh, 3Eh, 0BCh, 11h
db 39h, 0E0h, 0C8h, 83h, 0D3h, 0A1h, 0ADh, 0F0h, 0F0h, 3Fh, 0BCh, 26h, 27h, 3Eh, 3Dh, 0F9h, 7Dh, 0C7h, 0C6h, 0FFh, 0FFh, 3Eh, 7Ch, 73h, 7Bh, 0C8h, 81h, 93h, 99h, 0FDh, 0E0h
db 0F0h, 32h, 3Ch, 3Dh, 27h, 26h, 0BFh, 0BFh, 78h, 0FDh, 0C7h, 0C7h, 0FFh, 0FFh, 3Ch, 7Eh, 0F7h, 0FFh, 80h, 98h, 9Dh, 0DFh, 0FFh, 0DEh, 0F0h, 32h, 3Ch, 9Ch, 27h, 47h, 0F8h
db 0FAh, 3Ch, 31h, 0C1h, 0CDh, 0FBh, 7Fh, 3Eh, 3Eh, 0FFh, 0FFh, 0C0h, 0C0h, 9Eh, 0DFh, 0CFh, 84h, 70h, 6Eh, 0FCh, 3Ch, 0Eh, 0Dh, 0B0h, 0B0h, 35h, 38h, 0C3h, 0C9h, 0FFh, 0FFh
db 3Fh, 7Fh, 0EFh, 0CBh, 0C1h, 80h, 8Eh, 0CEh, 8Eh, 9Eh, 62h, 62h, 78h, 7Ch, 0Eh, 0Dh, 0B0h, 30h, 35h, 18h, 0C7h, 0EFh, 0FFh, 0FFh, 3Fh, 7Fh, 0C3h, 0EFh, 0C9h, 0D1h, 0CCh
db 0CEh, 86h, 86h, 62h, 62h, 38h, 78h, 0Dh, 8Fh, 0B0h, 0B8h, 1Dh, 1Dh, 0C7h, 0EFh, 0FEh, 0FFh, 3Fh, 1Fh, 8Bh, 0C5h, 0D9h, 89h, 0CCh, 0F8h, 16h, 16h, 7Ah, 70h, 28h, 39h
db 0Fh, 0Ch, 38h, 0B8h, 3Dh, 1Ch, 0E7h, 4Fh, 0FEh, 0FDh, 3Fh, 3Fh, 83h, 9Dh, 99h, 0DBh, 0FCh, 8Eh, 16h, 96h, 70h, 74h, 30h, 38h, 0Eh, 0Dh, 9Ch, 38h, 7Dh, 0F8h, 0CFh
db 0EFh, 0FDh, 0FEh, 3Fh, 9Fh, 83h, 0C1h, 9Dh, 0FBh, 0EEh, 0E5h, 0F6h, 3Eh, 40h, 60h, 38h, 0F8h, 0Ch, 0Ch, 9Ch, 3Eh, 3Dh, 0FCh, 0DFh, 0FFh, 0FFh, 0FFh, 3Fh, 0BEh, 0C1h, 87h
db 0B8h, 0DCh, 0ECh, 86h, 0FCh, 6Ch, 42h, 0EAh, 38h, 38h, 1Ch, 0Fh, 1Ch, 9Eh, 3Dh, 3Dh, 0BFh, 0FFh, 0FFh, 0FFh, 3Fh, 0BEh, 0C3h, 8Bh, 38h, 0C9h, 8Fh, 0FCh, 28h, 0F8h, 0C0h
db 0E6h, 39h, 0BBh, 0Eh, 1Fh, 1Ch, 19h, 3Ch, 39h, 3Fh, 0FFh, 0FFh, 0FDh, 3Eh, 7Fh, 0C3h, 83h, 0F9h, 1Bh, 8Fh, 0CFh, 68h, 0C8h, 0E0h, 0C0h, 3Ah, 1Ah, 4Ch, 1Eh, 1Ch, 9Ch
db 1Fh, 9Ch, 0BFh, 77h, 0FDh, 0FFh, 3Fh, 3Eh, 0C3h, 83h, 0FBh, 7Fh, 8Fh, 0CFh, 48h, 0C9h, 0E0h, 0C1h, 38h, 30h, 1Ch, 9Fh, 1Ch, 1Ch, 0BFh, 9Fh, 0BFh, 0EFh, 0FDh, 0FDh, 3Fh
db 7Fh, 0C3h, 87h, 7Fh, 0FDh, 8Dh, 0CDh, 19h, 31h, 0E0h, 0C2h, 0FCh, 3Ah, 1Eh, 3Dh, 1Ch, 1Ch, 1Fh, 0BFh, 0FFh, 0FFh, 0FFh, 0FDh, 0FFh, 3Eh, 0C3h, 0C6h, 7Dh, 0F9h, 0CDh, 89h
db 31h, 31h, 0C0h, 0A2h, 0Ch, 9Ch, 3Dh, 3Eh, 1Ch, 1Ch, 1Fh, 1Fh, 0BAh, 7Dh, 0FDh, 0FFh, 3Fh, 7Fh, 0C3h, 0C6h, 0DDh, 0FDh, 0C9h, 8Dh, 31h, 71h, 80h, 80h, 0Ch, 0Ch, 0FFh
db 0FBh, 1Ch, 1Ch, 0Fh, 5Eh, 39h, 3Bh, 0FDh, 0FFh, 3Fh, 0BFh, 5Ah, 0E1h, 0FFh, 0DDh, 49h, 9Fh, 63h, 73h, 82h, 0E2h, 00h, 34h, 0FFh, 0FFh, 1Ch, 1Ch, 1Fh, 1Eh, 7Fh, 3Fh
db 0FFh, 0FDh, 9Fh, 9Fh, 00h, 0D0h, 0BDh, 0DFh, 49h, 5Dh, 67h, 6Fh, 0C2h, 0C2h, 12h, 3Ch, 0FEh, 0FFh, 1Ch, 3Ch, 0Ch, 5Fh, 0FFh, 0FFh, 0FFh, 0FFh, 8Fh, 9Fh, 0C0h, 80h, 3Ch
db 5Eh, 59h, 49h, 4Fh, 8Fh, 80h, 82h, 31h, 53h, 0FEh, 0F0h, 3Ch, 1Ch, 1Ch, 0CEh, 0FFh, 0F9h, 0FFh, 0EFh, 8Fh, 1Fh, 80h, 00h, 3Ch, 0BEh, 59h, 4Eh, 0Fh, 0Fh, 80h, 02h
db 11h, 0D3h, 70h, 73h, 3Ch, 3Ch, 1Ch, 1Eh, 0FFh, 0FBh, 0FFh, 0EFh, 0BFh, 9Fh, 00h, 84h, 0BEh, 0FCh, 4Ch, 58h, 0Fh, 0Eh, 01h, 01h, 13h, 11h, 0F2h, 72h, 3Ch, 3Ch, 00h
db 0Eh, 0FFh, 0FFh, 0FFh, 0EFh, 0BFh, 0BFh, 00h, 80h, 0BEh, 0FDh, 0D8h, 58h, 0Eh, 1Fh, 00h, 00h, 13h, 0B3h, 0F6h, 0E6h, 3Ch, 3Ch, 0Eh, 27h, 0DFh, 0FFh, 0FFh, 0FFh, 9Fh, 0FFh
db 0C0h, 00h, 0FCh, 0FFh, 0D8h, 78h, 1Fh, 0Fh, 00h, 80h, 3Ah, 13h, 0E0h, 0F6h, 3Eh, 14h, 0Fh, 22h, 0FFh, 0FFh, 0FFh, 0FFh, 9Fh, 0BEh, 00h, 0C2h, 0FDh, 0FEh, 0FCh, 0D8h, 1Fh
db 1Eh, 00h, 81h, 0BEh, 0FEh, 0F0h, 0E0h, 1Ch, 1Ah, 63h, 0AFh, 0FFh, 0FFh, 0FFh, 0FFh, 8Fh, 8Fh, 05h, 83h, 0FDh, 0FFh, 0F8h, 0DCh, 9Fh, 0DFh, 0E1h, 0C0h, 0FFh, 0FFh, 0F0h, 0E6h
db 1Ah, 1Eh, 23h, 0BBh, 0FFh, 0EFh, 0FFh, 0FFh, 8Fh, 1Eh, 01h, 09h, 7Dh, 7Fh, 58h, 58h, 1Fh, 0Fh, 0C0h, 0E1h, 0ECh, 0FDh, 0F0h, 0E3h, 1Ah, 1Eh, 03h, 9Bh, 0EFh, 0E5h, 0FFh
db 0FEh, 3Fh, 0DEh, 03h, 09h, 7Dh, 36h, 68h, 0DCh, 0Fh, 0Fh, 0E0h, 0C0h, 7Ch, 7Ch, 0F2h, 0F1h, 1Fh, 1Eh, 0C3h, 41h, 0EFh, 0EFh, 0FFh, 0FFh, 1Fh, 0DFh, 03h, 03h, 5Ch, 0B1h
db 7Ch, 0ECh, 0Fh, 0Fh, 0C0h, 0C0h, 79h, 0FCh, 0F2h, 0F7h, 1Eh, 3Fh, 81h, 41h, 0FFh, 0EFh, 0FFh, 0FFh, 4Fh, 0DFh, 02h, 03h, 0D4h, 0CDh, 0FCh, 7Ch, 0Fh, 0Fh, 00h, 80h, 0F0h
db 7Ch, 0E6h, 4Dh, 3Eh, 3Eh, 01h, 81h, 0FFh, 0FFh, 7Fh, 0FDh, 0CFh, 5Fh, 02h, 0Ah, 44h, 55h, 0FCh, 7Ch, 0Fh, 0Fh, 00h, 80h, 0F8h, 0F4h, 43h, 0F3h, 3Eh, 0BEh, 03h, 63h
db 0E7h, 0EFh, 0FFh, 0FFh, 4Fh, 1Fh, 02h, 03h, 45h, 0D4h, 7Ch, 0FEh, 0Fh, 0Fh, 80h, 00h, 0F8h, 0D2h, 67h, 0E3h, 3Eh, 3Fh, 0C3h, 0C3h, 0FAh, 0EEh, 7Fh, 0FFh, 4Eh, 1Fh, 02h
db 8Bh, 44h, 55h, 0DCh, 7Eh, 0Fh, 0Fh, 80h, 80h, 0FAh, 74h, 0C7h, 66h, 3Eh, 3Fh, 83h, 0C7h, 0FEh, 0EFh, 0FFh, 0FFh, 4Eh, 9Eh, 8Fh, 0Eh, 44h, 54h, 0DCh, 58h, 0Fh, 07h
db 80h, 00h, 78h, 3Ah, 67h, 0C5h, 1Eh, 3Fh, 0E3h, 0C7h, 0EFh, 0FFh, 0FFh, 0FEh, 5Eh, 0CFh, 03h, 1Eh, 0C4h, 14h, 98h, 5Ch, 0Fh, 8Fh, 80h, 0C0h
;#SECTION "SAVEDATA", DATA

saveDataStart:
grayscaleCounter:
db 182
saveDataEnd:
EDIT: I finally figured it out. Turns out that I had to rotate the mask again before every time I left the interrupt because it was making the same mask over and over, so that the picture only showed as monochrome.
« Last Edit: November 24, 2018, 07:47:20 pm by Sue Doenim »

Offline Xeda112358

  • they/them
  • Moderator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 4704
  • Rating: +719/-6
  • Calc-u-lator, do doo doo do do do.
    • View Profile
Re: Grayscale Help
« Reply #1 on: November 24, 2018, 07:49:01 pm »
Oh, I'm glad you figured it out! That was the first mistake I had to fix in my first implementation :P

Offline ClainBill

  • LV2 Member (Next: 40)
  • **
  • Posts: 21
  • Rating: +1/-0
  • Everybody's just a FREAK
    • View Profile
    • My still developing website
Re: Grayscale Help
« Reply #2 on: November 30, 2018, 12:23:25 pm »
How do you write in Asm? Does it require a downloaded software?
"I don't think I've ever looked in this drawer." (opens it) "Wow, a gun!"

Offline Xeda112358

  • they/them
  • Moderator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 4704
  • Rating: +719/-6
  • Calc-u-lator, do doo doo do do do.
    • View Profile
Re: Grayscale Help
« Reply #3 on: November 30, 2018, 12:52:54 pm »
If you are a masochist, then technically no, as you can type in the hexadecimal opcodes directly on your calc. For everyone else, you can use a program that compiles a text file to a binary. The calculators have two main compilers -- Mimas and asmdream (I'm on mobile, otherwise I would look for the links). On a computer, I prefer spasm-ng, but there is Brass as well.
Personally, I jusy use a text editor, save my file with the .asm or .z80 extension (not really important) and then compile that to a .8xp

Offline ClainBill

  • LV2 Member (Next: 40)
  • **
  • Posts: 21
  • Rating: +1/-0
  • Everybody's just a FREAK
    • View Profile
    • My still developing website
Re: Grayscale Help
« Reply #4 on: December 03, 2018, 03:36:42 am »
wow... i barely understood half of that :P

whatever, i'm getting to learn more already . Thanks!
"I don't think I've ever looked in this drawer." (opens it) "Wow, a gun!"