101

Odp: bugi w mads

Ja bym też optował za tym, żeby wyłączyć to diabelne kolorowanie na jakiś przełącznik w linii poleceń.

hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

102

Odp: bugi w mads

nie chcecie aby Mads pokolorował Wam świat ?

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

103

Odp: bugi w mads

A w ogóle komuś te kolorowanie w czymkolwiek pomaga?

104

Odp: bugi w mads

w wyszczególnieniu komunikatów, warning, error etc.

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

105

Odp: bugi w mads

Całe życie spędziliśmy przy niebieskim tle i niebieskawych literach udających białe. Jedynym komunikatem jaki widzieliśmy był "ERROR n" i na jego podstawie analizowaliśmy przyczynę błędu. Na co komu kolory, czy opisy błędów? ;-)

Zawsze mam rację, tylko nikt mnie nie słucha.

106

Odp: bugi w mads

Trochę boomersko to brzmi, ale dla wystarczy gdzieś blisko początku słowo ERROR, WARNING albo NOTICE i wiem z czym mam do czynienia. Dodatkowo jak zgrywa się takie kolorowe logi do pliku to nie pojawiają się przypadkiem tam znaki specjalnie zmieniające te kolory, które w pliku tekstowym sprawiają że log wygląda jak śmietnik?

107

Odp: bugi w mads

@tebe
Pierwsza linijka jest OK.
Ale ciekawe bo w kodzie masz WHITE a u mnie przejęło główny kolor terminala (czyli zielony). W sumie powinno na DARKGRAY też jakoś mądrze zareagować.
Tło jest czarne, ale minimalnie przeźroczyste, więc coś się tam przebija jak na pulpicie jest jasna tapeta.

Ja bym kolorowanie włączył na opcję. Bez opcji niech idzie jak "w matrixie".

Edit: dodałem JPG

Ostatnio edytowany przez Gienek (2023-06-28 14:55:37)

Post's attachments

MADsMacOS.jpg 373.85 kb, nikt jeszcze nie pobierał tego pliku. 

Tylko zalogowani mogą pobierać załączniki.

108

Odp: bugi w mads

Jest ta chora notacja:

sta lab2:$ffff,y

która niby ma zastępować:

lab2 = *+1
  sta $ffff,y

a jest kompletnie nieintuicyjna i zaciemniająca tylko kod - a już kompletnie nie wiem jak przy jej pomocy zrealizować np.:

lab2 = *+2
  sta $ffff,y

@tebe: Może lepiej byłoby mieć inną deklarację etykiety:

etyk
etyk+
etyk++

analogicznie do skoków @+ i @-. Oznaczałyby one odpowiednio *+0, *+1 i *+2.
W kodzie odwołujesz się oczywiście do lab (plus mówi tylko o modyfikacji bieżącego licznika adresu):

opcod sta msb
adr+  lda $FFFF,x
msb++ lda $F000,y
lo+
hi++
      sta $FFFF

Hę?

P.S. Analogicznie mogłoby działać lab-, lab--, itd., choć osobiście nie widzę eleganckiego zastosowania, ale może się komuś przyda.

Ostatnio edytowany przez mono (2023-10-15 15:28:33)

hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

109

Odp: bugi w mads

@mono fajny pomysł

a może dało by się to jeszcze uprościć?

lo+:hi++:
      sta $FFFF
Lynx I / Mega ST 1 / 7800 / Portfolio / Lynx II / Jaguar / TT030 / Mega STe / 800 XL / 1040 STe / Falcon030 / 65 XE / 520 STm / SM124 / SC1435
DDD HDD / AT Speed C16 / TF536 / SDrive / PAK68/3 / Lynx Multi Card / LDW Super 2000 / XCA12 / SkunkBoard / CosmosEx / SatanDisk / UltraSatan / USB Floppy Drive Emulator / Eiffel / SIO2PC / Crazy Dots / PAM Net
http://260ste.atari.org

110

Odp: bugi w mads

Taki kod:

        opt o+ h+ ?+ c-

.macro check (x)
        lda myproc+40*:1,x
        beq @+
        lda #1
@
.endm

        org $2000

myproc:
        ldy #0
        seq
?copy   check $10
        dey
        bpl ?copy
        rts

        end

Rzecz polega na tym, że przy OPT ?+ (etykiety lokalne) i użyciu @ w makrze kod się nie kompiluje.

jerzyk@ox:~/atari/$ mads -l test.asx 
        bpl ?copy
test.asx (20) ERROR: Undeclared label ?COPY (BANK=0)
test.asx (20) ERROR: Branch out of range by $1F0F bytes
Writing listing file...

Jak nie ma etykiet lokalnych lubo też nie używamy odwołań @ to się kompiluje...

mads 2.1.7 (2024/03/01)

Ostatnio edytowany przez mono (2024-03-22 21:14:44)

hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

111

Odp: bugi w mads

Nie znam się, a i nie podejrzewam że mono miałby czegoś nie wiedzieć:-) Ale nie powinno być @:
W sensie czy nie zapomniałeś dwukropka?

112

Odp: bugi w mads

To samo. Etykiety mogą być bez dwukropka.
Ale dodatkowo

    opt o+ h+ ?+ c-

WIDTH=10

.macro test (y,x)
    lda $2000+[WIDTH*%%x],x
    sta $3000+[8*%%y],y
.endm

    org $2000

    test 1,2

    end

też generuje:

jerzyk@ox:~/atari$ mads -l test4.asx 
        test 1,2
        lda $2000+[WIDTH*%%x],x
test4.asx (9) ERROR: Undeclared label X (BANK=0)
        sta $3000+[8*%%y],y
test4.asx (10) ERROR: Undeclared label Y (BANK=0)
Writing listing file...

Za to jak jest OPT ?- to się pięknie kompiluje.

hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje