Editera kod i VICE

Diskussioner om programmering

Moderatorer: Fanta_gbg, e5frog, stonan, Zlasher, hollowman

Editera kod i VICE

Inläggav Blacker » 19 juli 2015, 21:05

En nybörjarfråga... Hur ändrar man befintlig kod i ett program man laddat in i Vice där man sen gått in i maskinkodsmonitorn? I TFCIII kan man ju bara skriva över den befintliga koden med den nya, men inte i VICE, där är koden låst och går ej att skriva över.
Användarvisningsbild
Blacker
Erfaren gesäll
Erfaren gesäll
 
Inlägg: 231
Blev medlem: 30 juli 2009, 22:54

Re: Editera kod i VICE

Inläggav bjonte » 19 juli 2015, 21:26

Nu gissar jag bara hejvilt. Standard i maskinkodsmonitorer är att skriva A <adress> <instruktion>. Funkar det kanske?
Användarvisningsbild
bjonte
Stormästare
Stormästare
 
Inlägg: 2021
Blev medlem: 17 april 2006, 23:12

Re: Editera kod i VICE

Inläggav Blacker » 20 juli 2015, 20:31

bjonte skrev:Nu gissar jag bara hejvilt. Standard i maskinkodsmonitorer är att skriva A <adress> <instruktion>. Funkar det kanske?


OK, vad innebär instruktionen/vad ska det stå där?
Användarvisningsbild
Blacker
Erfaren gesäll
Erfaren gesäll
 
Inlägg: 231
Blev medlem: 30 juli 2009, 22:54

Re: Editera kod i VICE

Inläggav bjonte » 20 juli 2015, 21:37

Blacker skrev:OK, vad innebär instruktionen/vad ska det stå där?

Assemblerinstruktion. Exempelvis

a 8000 sei
a 8001 lda #0
a 8003 rts

Jag blir lite förvirrad. Vad är det du menar att du ska göra? Ska du ersätta kod eller data? Ska du ladda in eller skriva in det som ska ersättas?
Användarvisningsbild
bjonte
Stormästare
Stormästare
 
Inlägg: 2021
Blev medlem: 17 april 2006, 23:12

Re: Editera kod i VICE

Inläggav carlsson » 21 juli 2015, 10:17

Bjonte är inne på rätt spår. Alt-M för att gå in i monitorn, sedan A adress instruktion <return>. Monitorn fyller då automatiskt på med nästa adress, tills du trycker return för blank rad, så kommer du till monitorprompten på nytt.

Om koden du försöker att ersätta ligger i en ROM-del av minnet går det förstås inte, såvida du inte kopierar ROM till RAM som ligger bakom och sedan med hjälp av $01 kopplar om minnet, men det är ju en annan diskussion.
Användarvisningsbild
carlsson
VIC-20 Guru
VIC-20 Guru
 
Inlägg: 2357
Blev medlem: 10 oktober 2007, 16:24
Ort: Västerås

Re: Editera kod i VICE

Inläggav Blacker » 21 juli 2015, 15:52

Vad jag hade tänkt var att gå in i första bästa program och försöka ändra nånting, t.ex. en textfras. Jag tänkte att det åtminstone kunde vara ett första steg för att åtminstone fatta hur nånting funkar. Exempelvis en textrad på adress 0200. Men det går inte att skriva över befintliga siffror med nya för att på så sätt få fram andra bokstäver, det är låst.
Användarvisningsbild
Blacker
Erfaren gesäll
Erfaren gesäll
 
Inlägg: 231
Blev medlem: 30 juli 2009, 22:54

Re: Editera kod i VICE

Inläggav Blacker » 21 juli 2015, 15:54

Låt säga att det i monitorn på rad ">C:1312" står England men jag vill ändra det till Sweden, hur matar jag in det?
Användarvisningsbild
Blacker
Erfaren gesäll
Erfaren gesäll
 
Inlägg: 231
Blev medlem: 30 juli 2009, 22:54

Re: Editera kod i VICE

Inläggav carlsson » 21 juli 2015, 23:10

Då använder du kommandot ">" på följande sätt:

Alt-M för att gå in i monitorn
> 1312 "Sweden"
i 1312
>C:1312 sWEDEN@@@@@

Eventuellt får du kasta om stora och små bokstäver, men det var inte vad du frågade om.
Användarvisningsbild
carlsson
VIC-20 Guru
VIC-20 Guru
 
Inlägg: 2357
Blev medlem: 10 oktober 2007, 16:24
Ort: Västerås

Re: Editera kod i VICE

Inläggav Blacker » 22 juli 2015, 06:16

carlsson skrev:Då använder du kommandot ">" på följande sätt:

Alt-M för att gå in i monitorn
> 1312 "Sweden"
i 1312
>C:1312 sWEDEN@@@@@

Eventuellt får du kasta om stora och små bokstäver, men det var inte vad du frågade om.


Suveränt, tack det ska jag prova. Tack för alla övriga tips också.
Användarvisningsbild
Blacker
Erfaren gesäll
Erfaren gesäll
 
Inlägg: 231
Blev medlem: 30 juli 2009, 22:54

Re: Editera kod i VICE

Inläggav Blacker » 22 juli 2015, 19:58

Fick aldrig riktigt till det så jag återvände till den riktiga datorn med TFCIII och där funkar allt perfekt. Lyckades editera lite text och starta upp programmet igen med den nya texten, alltid något. Men sen då, hur lär man sig programmera själv på riktigt? :-) Jag har läst en massa artiklar och laddat ner minnesregister, Butterfield mm. Känns som att man kanske borde lära sig något om vad olika minnesadresser används till eller rättare sagt vad dom kan användas till och inte? Annars känns det som någorlunda gångbart att gå in och rota i befintliga program och försöka se hur det är gjort, typ, eller? Det känns som det är långt kvar :-)
Användarvisningsbild
Blacker
Erfaren gesäll
Erfaren gesäll
 
Inlägg: 231
Blev medlem: 30 juli 2009, 22:54

Re: Editera kod i VICE

Inläggav Blacker » 22 juli 2015, 20:06

Bara en sån sak som att spara ner ett program för att kunna ladda in i vanligt BASIC-mode, hur tusan gör man det? :-) I en assemblerinstruktion finns ett introduktionsexempel på kodning (vilket ju var skoj, för det händer ju nåt på skärmen). Man matar in:

.A2000 INC $D020
.A2003 JMP $2000

Och vips, flimrande färger. Men hur tusan sparar man ner det sen så att man kan ladda in som vanligt från Basic?
Användarvisningsbild
Blacker
Erfaren gesäll
Erfaren gesäll
 
Inlägg: 231
Blev medlem: 30 juli 2009, 22:54

Re: Editera kod i VICE

Inläggav bjonte » 22 juli 2015, 20:28

Jag kan rekommendera Mapping the C64 som referens till minnesadresser. Där förklaras rätt bra hur allt funkar. Sedan går det att börja meka i Basic eller assembler. Programmers Reference Guide är bra för att förklara del för del av hårdvaran. Både Basic och assembler behandlas dessutom.
Användarvisningsbild
bjonte
Stormästare
Stormästare
 
Inlägg: 2021
Blev medlem: 17 april 2006, 23:12

Re: Editera kod i VICE

Inläggav carlsson » 22 juli 2015, 22:26

För att få ihop det med BASIC behöver du en s.k. BASIC-stub och sedan ställa pekare så BASIC tycker att det använda minnet omfattar hela ditt maskinkodsprogram.

Om du ska börja programmera assembler på någorlunda seriös nivå, är min starka rekommendation att söka upp en korsassemblator redan från dag 1. Då kan du använda en vanlig texteditor, du kan lägga in macron för allt möjligt inklusive ovan nämnda stub, du kan versionshantera din källkod om du vill och eftersom du ändå sitter med halva foten i emulerad miljö kan du köra dina färdigassemblerade alster i emulatorn vartefter och föra över till riktig maskin när du kommit så långt att det är dags att fintesta.
Användarvisningsbild
carlsson
VIC-20 Guru
VIC-20 Guru
 
Inlägg: 2357
Blev medlem: 10 oktober 2007, 16:24
Ort: Västerås

Re: Editera kod i VICE

Inläggav bjonte » 23 juli 2015, 15:46

Blacker skrev:Men hur tusan sparar man ner det sen så att man kan ladda in som vanligt från Basic?

Har du en maskinkodsmonitor eller freezercart med monitor så kan du spara med

S"FILNAMN",08,8000,8006

i monitorn och ladda det från BASIC med

LOAD"FILNAMN",8,1

men jag håller med Carlsson om att det är bättre investerad tid att leta fram en assembler för en modern dator och skriva ditt program där. Det är många som kör Kickassembler och ca65 verkar det som. Om du väljer en så kan vi coacha dig igenom dina första program.
Användarvisningsbild
bjonte
Stormästare
Stormästare
 
Inlägg: 2021
Blev medlem: 17 april 2006, 23:12

Re: Editera kod i VICE

Inläggav Blacker » 24 juli 2015, 15:56

bjonte skrev:
Blacker skrev:Men hur tusan sparar man ner det sen så att man kan ladda in som vanligt från Basic?

Har du en maskinkodsmonitor eller freezercart med monitor så kan du spara med

S"FILNAMN",08,8000,8006

i monitorn och ladda det från BASIC med

LOAD"FILNAMN",8,1

men jag håller med Carlsson om att det är bättre investerad tid att leta fram en assembler för en modern dator och skriva ditt program där. Det är många som kör Kickassembler och ca65 verkar det som. Om du väljer en så kan vi coacha dig igenom dina första program.


Tack för det. Jag ska kika lite på Kickassembler och se om jag kan få fart på det.
Användarvisningsbild
Blacker
Erfaren gesäll
Erfaren gesäll
 
Inlägg: 231
Blev medlem: 30 juli 2009, 22:54

Nästa

Återgå till Programmering/prog.-verktyg

Vilka är online

Användare som besöker denna kategori: Inga registrerade användare och 1 gäst

Banners

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