Jag och jasm.

Diskussioner om programmering

Moderatorer: Fanta_gbg, e5frog, stonan, Zlasher, hollowman

Jag och jasm.

Inläggav Redreamer » 10 juni 2019, 18:11

Jag har försökt testa lite jasm, men fick snabbt problem med att jag inte lyckades med ens den enklaste kompileringen.
Jag kollade så att jag körde utf-8.
Testat att skriva med både med notepad och notepad++. Kopierade in det första exemplet,
Kod: Markera allt
section code, "main", $8000
{
    inc $d020
    rts
}


Efter kompilering fick jag en fil med endast detta i
"EE 20 D0 60"

Hur kan jag göra misslyckas så snabbt? :D
It always return one day!
Användarvisningsbild
Redreamer
Stormästare
Stormästare
 
Inlägg: 1241
Blev medlem: 1 maj 2005, 10:07
Ort: Borås

Re: Jag och jasm.

Inläggav bjonte » 10 juni 2019, 20:40

Det ser ju ut att stämma. Tre byte för första instruktionen och en för andra. Vad menar du är fel?

Om det är startadressen som du tycker saknas så finns ett argument för att lägga till det. -hla är det. Då kan du ladda filen med LOAD"FIL",8,1 och starta med SYS32768.
Användarvisningsbild
bjonte
Stormästare
Stormästare
 
Inlägg: 1655
Blev medlem: 17 april 2006, 23:12

Re: Jag och jasm.

Inläggav bjonte » 10 juni 2019, 20:46

Jag ser nu att det är fel i exemplet för att -hla fattas på kommandoraden. Jag ska rätta det i manualen.
Användarvisningsbild
bjonte
Stormästare
Stormästare
 
Inlägg: 1655
Blev medlem: 17 april 2006, 23:12

Re: Jag och jasm.

Inläggav Redreamer » 10 juni 2019, 20:52

Jaha, jag trodde att $8000 i code section gav startadressen. Är inte så duktig på att läsa ur rena bytar och se vad det står. Men jag såg ju att den laddade in i minnet fast inte på den plats jag förväntade mig. Men nu ska jag nog snart vara på banan. =)

Angående manualen så borde det nog vara
LOAD"MAIN",8,1
Under starter guide.
Senast redigerad av Redreamer 10 juni 2019, 20:57, redigerad totalt 1 gång.
It always return one day!
Användarvisningsbild
Redreamer
Stormästare
Stormästare
 
Inlägg: 1241
Blev medlem: 1 maj 2005, 10:07
Ort: Borås

Re: Jag och jasm.

Inläggav bjonte » 10 juni 2019, 20:55

Så sant. Nu har jag ändrat manualen.
Användarvisningsbild
bjonte
Stormästare
Stormästare
 
Inlägg: 1655
Blev medlem: 17 april 2006, 23:12

Re: Jag och jasm.

Inläggav Redreamer » 10 juni 2019, 20:59

För att vara petig... kan man skriva load"main.prg",8,1 ? Tror inte den vill ha med prg.
It always return one day!
Användarvisningsbild
Redreamer
Stormästare
Stormästare
 
Inlägg: 1241
Blev medlem: 1 maj 2005, 10:07
Ort: Borås

Re: Jag och jasm.

Inläggav bjonte » 10 juni 2019, 21:15

Bra fråga. Det beror på hur filen har förts över så det går inte att säga med säkerhet. För mig är .PRG kvar. Hur gör du som gör att det försvinner?
Användarvisningsbild
bjonte
Stormästare
Stormästare
 
Inlägg: 1655
Blev medlem: 17 april 2006, 23:12

Re: Jag och jasm.

Inläggav Redreamer » 11 juni 2019, 16:44

Ok, jag trodde att det var .prg alltså det prg man ser längst till höger när man listar en disk som du menade.
Jag använder dirmaster. https://style64.org/dirmaster
It always return one day!
Användarvisningsbild
Redreamer
Stormästare
Stormästare
 
Inlägg: 1241
Blev medlem: 1 maj 2005, 10:07
Ort: Borås

Re: Jag och jasm.

Inläggav Redreamer » 15 juni 2019, 22:58

Jag använder uppenbarligen detta på fel sätt, men såhär hade jag tänkt mig det. Jag har en main fil(main.jasm).
Kod: Markera allt
include "setup.jasm"

section code, "main", $0801
{
    define word = .next_basic_line // next BASIC line
    define word = 2016 // line number
    define byte = $9e // SYS token
    define byte[] = { string(.start) }
    define byte = 0 // end of line
.next_basic_line:
    define word = 0 // zero next BASIC line to mark end of program

.start:
    jsr setup_world_gfx
    rts
}


Sedan vill jag ha en ny fil (setup.jasm). Försökte med att i den skiva
Kod: Markera allt
section part, "main"
{
   subroutine setup_world_gfx
   {
      ....
   }
}


Men det gick ju inte så bra. Skulle ju kunna ha en ny (section code, "setup", $xxxx). Men då måste jag ju definiera vart i minnet den skall ligga... jag vill ju bara att den "hakar på"...
It always return one day!
Användarvisningsbild
Redreamer
Stormästare
Stormästare
 
Inlägg: 1241
Blev medlem: 1 maj 2005, 10:07
Ort: Borås

Re: Jag och jasm.

Inläggav bjonte » 15 juni 2019, 23:06

Helt rimligt. Problemet här är att ordningen som sektioner definieras och refereras spelar roll. Här refererar du till sektionen först och definierar den sedan. Flytta include sist i main-filen så funkar det.
Användarvisningsbild
bjonte
Stormästare
Stormästare
 
Inlägg: 1655
Blev medlem: 17 april 2006, 23:12

Re: Jag och jasm.

Inläggav bjonte » 15 juni 2019, 23:08

Det går också att få en sektion att haka på genom att ange * som startadress, men det är bättre att använda section part som du gjorde tycker jag.
Användarvisningsbild
bjonte
Stormästare
Stormästare
 
Inlägg: 1655
Blev medlem: 17 april 2006, 23:12

Re: Jag och jasm.

Inläggav Redreamer » 15 juni 2019, 23:17

Ok, jo, jag misstänkte efter felmeddelandet som jag fick från kopileringen att den inte gillade ordningen. Ser det inte skumt ut med include nedanför? Eller brukar det vara så ibland? Jag tänker rent generellt i olika språk.
It always return one day!
Användarvisningsbild
Redreamer
Stormästare
Stormästare
 
Inlägg: 1241
Blev medlem: 1 maj 2005, 10:07
Ort: Borås

Re: Jag och jasm.

Inläggav bjonte » 16 juni 2019, 05:37

Redreamer skrev:Ser det inte skumt ut med include nedanför? Eller brukar det vara så ibland? Jag tänker rent generellt i olika språk.


Jo, det är vanligt med include ovanför men i andra språk har man inte kontroll på i vilken ordning saker hamnar i minnet. Det är också vanligt att funktioner måste definieras innan de används men det är ju inget krav i assembler.
Användarvisningsbild
bjonte
Stormästare
Stormästare
 
Inlägg: 1655
Blev medlem: 17 april 2006, 23:12

Re: Jag och jasm.

Inläggav Redreamer » 16 juni 2019, 07:49

Ok, då förstår jag, låter helt logiskt. Skulle förmodligen bli mer omständigt om man ska foga samman flera filer med kodrader med odefinierade adresser på något annat vis.
Om det blir något större projekt med jasm så ska det bli spännande att se hur snabb den är vs cbm studio som jag har idag. cbm studio är väldigt lättarbetad med väldigt seg med kompileringen. Nu när jag har lite mer erfarenhet så kan det vara kul att testa något nytt med. =)
It always return one day!
Användarvisningsbild
Redreamer
Stormästare
Stormästare
 
Inlägg: 1241
Blev medlem: 1 maj 2005, 10:07
Ort: Borås

Re: Jag och jasm.

Inläggav bjonte » 16 juni 2019, 08:21

Redreamer skrev:Om det blir något större projekt med jasm så ska det bli spännande att se hur snabb den är vs cbm studio som jag har idag.


Jag läste på forumet att Bruce Lee II assemblerade på 120 ms på en hyfsad dator och lite över 1 sekund på en långsam. Sedan dess har mycket hänt med assemblern. Jag skulle bli väldigt intresserad av vad du gör om du får det att ta mer än en sekund att assemblera något.
Användarvisningsbild
bjonte
Stormästare
Stormästare
 
Inlägg: 1655
Blev medlem: 17 april 2006, 23:12

Nästa

Återgå till Programmering/prog.-verktyg

Vilka är online

Användare som besöker denna kategori: Google [Bot] och 2 gäster

Banners

BOA Japon Mediapalatset Nostalgibutiken
Quartex Retro Overlays Retroplay Spel och sånt
Super Motaro Söders Serie & Skivhandel vintagegames.se RG 2016
cron