www.pegasos.org :: View topic - C-kursen fortsätter =)
http://www.ggsdata.se
Home   News   Forum   Gallery   
Search 
Login




 


 Log in Problems?
 New User? Sign Up!

Navigation

Online
Currently no members online:)

You are an anonymous user. You can register for free by clicking here
There are 1 unlogged users online !

Latest Web Links

Latest Downloads

Post new topic   Reply to topic
View previous topic Printable version Log in to check your private messages View next topic
Author Message
Develin
Post subject: C-kursen fortsätter =)  PostPosted: Apr 23, 2004 - 17:46
Addict
Addict


Joined: Aug 19, 2003
Posts: 169
Location: Karlstad
Sådär, nu fick jag tummen ur o komplettera del2 i kursen.
Det kompletta arkivet finns att hämta som vanligt på publika FTPn samt på http://www.onyxsoft.se/stefan/ckurs02.lha

Sitter och funderar på nästa del just nu, men jag tror vi kan avvakta med ytterligare grafik-exempel ett tag nu så går vi på GUI eller ljud i nästa del eller så...

Håll till godo - låt det goa rulla!

_________________
Mvh
Stefan Blixth, OnyxSoft
 
 View user's profile Send private message Visit poster's website MSN Messenger ICQ Number 
Reply with quote Back to top
Gullden
Post subject:   PostPosted: Apr 23, 2004 - 18:35
Elderman
Elderman


Joined: Jan 24, 2004
Posts: 305
Location: location
Gott jobbat Develin! Very Happy

_________________
coffe: because there is no reason to be miserable every day until you die
 
 View user's profile Send private message  
Reply with quote Back to top
TimK
Post subject:   PostPosted: Apr 29, 2004 - 13:06
Journeyman
Journeyman


Joined: Aug 19, 2003
Posts: 45
Location: Amsterdam
Superbra, äntligen känns det motiverande att lära sig C.
Men jag undrar var man kan få tag i Autodoc, eller snarare hur det fungerar?

Detta är ett jättebra initativ. Kanske vi snart ser en flod av MOS program dyka upp på Aminet (Pegnet? Wink ).

// Tim
 
 View user's profile Send private message Send e-mail  
Reply with quote Back to top
Develin
Post subject:   PostPosted: May 04, 2004 - 15:06
Addict
Addict


Joined: Aug 19, 2003
Posts: 169
Location: Karlstad
@TimK

Här kan du plocka hem NDK'n som kan komma att behövas för 3.x-API-kompabiliteten :

http://www.amiga.com/3.9/download/NDK3.9.lha

I MOS SDK'n som du hittar på :
http://mdc.morphos.net/

Finner du de uppdaterade delarna som tillkom iom. ABox'en osv.

Jag ska försöka förklara hur man använder dessa, men just nu har jag brådis så jag återkommer senare ikväll eller imorrn om detta!

_________________
Mvh
Stefan Blixth, OnyxSoft
 
 View user's profile Send private message Visit poster's website MSN Messenger ICQ Number 
Reply with quote Back to top
T1k
Post subject:   PostPosted: May 05, 2004 - 10:29
Journeyman
Journeyman


Joined: Mar 04, 2004
Posts: 55
Location: Stockholm
Bra där Develin Smile

Så fort jag har fått ordning på peggen skall jag sätta igång.
Jag har gett mig tusan på att lyckas köra både MOS och Gentoo på peggen men det verkar vara lite svårare än jag först trodde....eller snarare jag är mer n00b än jag trodde.... :]

Jag har en partition med hela mitt oldskool-arkiv från the golden days och råkar jag radera den så dör jag! Jag är en peka och klicka-kille, förbannelse över alla commandlines men jag SKA lära mig!

_________________
Mind - Universe - Mind - Universe
 
 View user's profile Send private message ICQ Number 
Reply with quote Back to top
gunne
Post subject:   PostPosted: May 05, 2004 - 11:40
Order of the Pegasos
Order of the Pegasos


Joined: Aug 16, 2003
Posts: 2538
Location: Göteborg
Det Nicolas har gjort en ganska bra guide för detta här;

Linux + Mos

Den är iofs lite gammal nu, och inte aktuell i alla delar, men med lite fri vilja och smärre modifikationer greppar du det nog.

Det som väl är grundläggande att ha i åtanke är att man skapar partitioner ifrån ett av os:en, och helst bör försöka undvika gå in med partitionsverktyg ifrån olika os på samma disk.

_________________
Mvh Gunne
 
 View user's profile Send private message Send e-mail Visit poster's website  
Reply with quote Back to top
lisardman
Post subject:   PostPosted: May 05, 2004 - 12:24
Order of the Butterfly
Order of the Butterfly


Joined: Jan 14, 2004
Posts: 1940
Location: Karlsborg,Sverige
T1k wrote:

Jag har en partition med hela mitt oldskool-arkiv från the golden days och råkar jag radera den så dör jag! Jag är en peka och klicka-kille, förbannelse över alla commandlines men jag SKA lära mig!


jag klarar inte av att använda en dator utan bra kommandotolk längre.
 
 View user's profile Send private message Visit poster's website ICQ Number 
Reply with quote Back to top
Gullden
Post subject:   PostPosted: May 05, 2004 - 12:31
Elderman
Elderman


Joined: Jan 24, 2004
Posts: 305
Location: location
finns det datorer som inte har kommandotolk ? Wink

_________________
coffe: because there is no reason to be miserable every day until you die
 
 View user's profile Send private message  
Reply with quote Back to top
lisardman
Post subject:   PostPosted: May 05, 2004 - 12:46
Order of the Butterfly
Order of the Butterfly


Joined: Jan 14, 2004
Posts: 1940
Location: Karlsborg,Sverige
jag menar bra kommando tolk.. t.ex Windows kommandotolk är väl ingen höjdare direkt..
 
 View user's profile Send private message Visit poster's website ICQ Number 
Reply with quote Back to top
gunne
Post subject:   PostPosted: May 05, 2004 - 12:50
Order of the Pegasos
Order of the Pegasos


Joined: Aug 16, 2003
Posts: 2538
Location: Göteborg
Shocked

_________________
Mvh Gunne
 
 View user's profile Send private message Send e-mail Visit poster's website  
Reply with quote Back to top
dholm
Post subject:   PostPosted: May 05, 2004 - 19:07
Order of the Butterfly
Order of the Butterfly


Joined: Aug 26, 2003
Posts: 1784
Location: Malmö
Jag har alltid minst två terminaler igång på desktoppen och ett par till på servern. Det tar helt enkelt för lång tid att göra saker med musen, så den sparar man tills när man måste använda den.

_________________
I need this baby in a month send me nine women!
 
 View user's profile Send private message Send e-mail Visit poster's website ICQ Number 
Reply with quote Back to top
Develin
Post subject:   PostPosted: May 06, 2004 - 06:50
Addict
Addict


Joined: Aug 19, 2003
Posts: 169
Location: Karlstad
Liten förklaring till hur Autodocs funkar...

I början av filen hittar man innehållsförteckningen över bibliotekets funktioner.
När jag skriver bibliotek ovan så är det inte enbart libraries, utan kan även
omfatta devices, resources eller annat.

Iaf. namnet på funktionerna har ofta anknytning till dess funktion (konstigt vore väl annars) Smile
Ett problem som man kan komma på om man inte är van upplägget på systemet är att
hitta funktionen man vill ha information om. Men det är bara att leta på så finner man
allt det man söker efter till slut Smile

Jag brukar själv använda mig av AutoDocReader (kommer inte ihåg URL'en nu tyvärr)
och detta programmet är bra för det kan man enkelt söka o dela upp olika delar.

Men, vi tar ett exempel...

Säg att vi ska allokera en minnesarea till nån form av grafik eller ljud
som vi ska använda oss av. Först måste vi känna till vart de grundläggande
funktionerna för minnehantering ligger. Och om man inte kände till det
innan så finner man dem i exec.library.
Detta bibliotek är grunden i det mesta i systemet så här finner
man funktioner för signalering, minneshanteringar I/O-hantering mm.
Så vi tar oss en titt på "exex.doc"...

Vi kollar i förteckningen och finner ett antar olika Allokerings-funktioner.
"AllocMem" låter väl som en bra början att hoppa till o kontrollera ? Smile

Väl nere på det stycket ser vi en kort introduktion :
- "AllocMem -- allocate memory given certain requirements"

Låter ju som det skulle kanske passa för det vi vill göra, eller hur?
Men vi läser vidare o ser om det finns för några andra funktioner
som kan vara till fördel eller ev. nackdel för oss.

"SYNOPSIS" visar hur funktionen fungerar mera generellt.
- memoryBlock = AllocMem(byteSize, attributes)
- void *AllocMem(ULONG, ULONG);

De två argumenten är av typen ULONG och resultatet är av typen "*" eller
pekare som det heter i ord...


Sedan kommer vi till funktionsförklaringen vilket är bra att skumma
igenom så vi vet vad som händer vid ett anrop av denna funktion.

Nästa steg är "INPUTS", vilket man i kombination med SYNOPSIS-delen
ser vart de fält som tas upp hör hemma (vart de ligger som funktions-
parametrar osv.).

- "byteSize" är den önskade storleken i bytes.
dvs. behöver vi en minnesmängd på 1kB så anger vi 1024 som argument här.

- "attributes"

Här står det om inga flaggor är satta (dvs. vi anger NULL) så kommer
systemet att själv göra det bästa av situationen.
Här anges det om FAST och CHIP-mem eller PUBLIC, och efterssom vi varken har
nått specifikt FAST eller CHIP-mem så är det PUBLIC-memory vi anger.

Vi kollar vidare och hittar flaggan MEMF_CLEAR, detta nollställer
minnet som vi allokerar från starten, kan ju vara bra i vissa fall
annars helt onödigt då det slöar ner allokeringsfunktionen något.

Om vi vill ha dessa 2 flaggor i funktionsanropet och alloker 1kb så
kommer vårt anrop att se ut som följande :

- unsigned char *datablock;
- datablock = AllocMem(1024, MEMF_PUBLIC | MEMF_CLEAR);


Om vi följer autodocs nästa steg så ser vi "RESULT" och det är vikitgt
att läsa denna del för här står det vad man bör tänka på vid olika retur
värden man får från funktionen osv.
det står tex. att funkionen returnerar 0 om inte allokeringen gick som det var
tänkt.

Så det vi bör göra efter allokerings-funktionen är alltså att kontrollera
att datablock inte är 0. För om det är 0 så bör vi hoppa ur programmet och
skriva att allokeringen misslyckades osv.

I slutet på autodocs står det ofta om det finns några fallgropar med funktionen,
vad man bör tänka på och även referenser till närliggande funktioner.
I AllocMem's fall så står det tex. "FreeMem", vilket är logiskt för det avallokerar
det minne vi har tagit från systemet...

Men ett tips, kontrollera runt lite om det finns någon bättre funktion som motsvarar
det eftersträvande funktionen ni vill åt.
Om vi tex. tittar på AllocVec-funktionen istället så är den bra mycket smidigare
än tex. AllocMem för AllocVec kräver inte att man själv håller reda på storleken som man
allokerade minnet med utan kan själv hålla reda på detta och när man avallokerar minnet
som man har nyttjat med AllocVec använder man FreeVec-funktionen istället (och där anges enbart
pekaren till datablocket). Så det är alltid ide att kolla runt lite på närliggande
funktioner o referenser i dokumentationen.

Jag vet att mycket av detta kan låta rörigt, men man vänjer sig snart med upplägget
om man provar på o använder det. Det är lika bra att försöka o fela än att inte försöka
över huvud tagit sas. Smile

_________________
Mvh
Stefan Blixth, OnyxSoft
 
 View user's profile Send private message Visit poster's website MSN Messenger ICQ Number 
Reply with quote Back to top
AmigaFF
Post subject:   PostPosted: Apr 03, 2007 - 11:47
Journeyman
Journeyman


Joined: Mar 08, 2007
Posts: 31

Kul kurs du skrivit ihop! Första delen var bra för att repa upp mina gamla C kunskaper, den andra var klurigare men inte helt
omöjlig hoppas jag, ska bara få fart på GCC så ska jag nog lära mig. Bara jag får tid till det så.
Jag hoppas att du kan få ut en del tre så småningom, så det blir en triologi i alla fall Very Happy
 
 View user's profile Send private message  
Reply with quote Back to top
Develin
Post subject:   PostPosted: Apr 04, 2007 - 08:44
Addict
Addict


Joined: Aug 19, 2003
Posts: 169
Location: Karlstad
Det vore ju onekligen på tiden att skapa lite nya delar och även rusta upp lite i de gamla kanske.
Ska se ifall man kan få nån extra tid till övers innan det nya lilla blåa "trollet" anländer hemma får då blir det nog inte mycket datorer kan jag tänka mig Smile

_________________
Mvh
Stefan Blixth, OnyxSoft
 
 View user's profile Send private message Visit poster's website MSN Messenger ICQ Number 
Reply with quote Back to top
lisardman
Post subject:   PostPosted: Apr 04, 2007 - 09:29
Order of the Butterfly
Order of the Butterfly


Joined: Jan 14, 2004
Posts: 1940
Location: Karlsborg,Sverige
det blir bara mer o mer datorer då..

_________________
RR!
 
 View user's profile Send private message Visit poster's website ICQ Number 
Reply with quote Back to top
Display posts from previous:     
Jump to:  
All times are GMT + 1 Hour
Post new topic   Reply to topic
View previous topic Printable version Log in to check your private messages View next topic
Powered by PNphpBB2 © 2003-2004 The PNphpBB Group
Credits
All logos and trademarks in this site are property of their respective owner.
The comments are property of their posters, all the rest © 2004-2012 by pegasos.org

backend|avantgo