Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > pl.comp.programming > #30649

Re: [OT] (announce) organic asm

Newsgroups pl.comp.programming
Date 2017-09-06 13:00 -0700
References (8 earlier) <1ec62db8-ecf0-495a-b46f-63392acab5bd@googlegroups.com> <0b1d7ec4-9cee-4946-85ea-fa263851e56c@googlegroups.com> <12bd93f4-ecd4-4d6d-809e-c71fa681ab3f@googlegroups.com> <80e42869-34c7-46c6-b149-607c88a111bd@googlegroups.com> <2d2be0a7-39f3-46e9-8852-2c62c4af4547@googlegroups.com>
Message-ID <fb0f283f-2e95-4eb2-b1b0-e89c37c7e90a@googlegroups.com> (permalink)
Subject Re: [OT] (announce) organic asm
From fir <profesor.fir@gmail.com>

Show all headers | View raw


tak wogole pisanie asma nie jest trudne choc ma troche trudniejsze kawalki

moe przedstawic jeden problem bo zrobilem na odwal (tj pierwsza iteracje problemu)
i musze tu troche poprawic

najpierw asembler zbiera info nt importow
(na co slkada sie lista nazw dll-ek i wywolywanych z nich funkcji)

ja to zbieram do tablicy o stalym rozmarze (np 100 na 100) ktora ma taka zawartosc

"moduleX",  "fooA", "fooB", NULL, NULL, ...
"moduleY",  "fooG", "fooH", "fooI", NULL, 
..
"moduleZ", "fooP", "fooQ", "fooR", NULL, ...

"moduleW", "fooI", NULL, NULL, NULL,
"moduleT", "fooS", "fooT", NULL, NULL,
NULL, 
NULL,


i to jest jeden maly problem bo moze nastapic przepelnienie jesli importowanych dll-ek bedzie wiecej niz 100 lub importowanych funkcji dla jednej dll-ki bedzie wiecej niz 99

taka tablica jest jednak wygodna 
i prosta 

sam to pewnie zostawie tak jak jest tylko rozmaiar zahardkoduje na wiekszy np 1000 na 1000 (jest to tablica wskaznikow wiec te pare mega mozna poswiecic ;c - ale nie jest to ideologicznie czyste (w takich wypadkach jednak wole zrobic w pierwszej iteracji cos co jest proste niz ogolne)

dalej problem jest nawet wiekszy bo na podstawie zawartosci tej tablicy trzeba zbudowac sekcje importow w exacu

ta sekcja sklada sie z czegos takiego:

1)
najpierw jest tablica (N+1)*20 bajtow
gdzie N to liczna importowanych modulow
gdzie ustawia sie pewne wskazniki 
- to sie buduje dosyc latwo

 dalej sa jeszcze dwie rzeczy to wpisania

2 trzebe przekopiowac te wszystki stringi z wspomnienej tablicy importow

zdaje sie ze ich kolejnosc nie jest nawet zbyt wazna wiec moge jakby poleciec po kolei wierszami ignorujac nule i wrzucajac strcpy (chyba moge zalozyc ze nazwy maja max 32 znaki choc nie jestem pewien

wymaga to jednach chyba napisania dosyc glupiej funkcji 

int RowColumn2LinearOrder(x,y)

bo pozniej bede potrzebowal uzyskania dokladnego offsetu do tej nazyw dla 
ukladu modul-funkcja

taka funkcja przeliczania z x y na ten linearny offset jest dosyc glupia, ale chyab tak zrobie (glupia ale stosunkowo malo roboty a musze chodzic na kompromisy z wlasnym lenistwem/ograniczeniami energetycznymi)

3) dalej trzeba jeszcze zbudowac listy wskaznikow na te nazwy, te listy wskaznikow maja byc per-modul i bodajrze konczyc sie zerem na koncu listy funkci dla kazdego modulu

w sumie tutaj chyba moge wykorzystac ten sam liniowy porzadek korzystajac z tego ze w tym liniowym listy nazw funkcji sa przetykane nazwami modulow, tylko zamiast wskaznika na nazwe modulu dam zero 

to chyab da sie zrobic latwo jesli gdzies sie nie walne (ogolnie to nie jest trudne ale problem jest ze zrozumieniem zasad tego formatu oraz z nie popelnieniem pomylki w generowaniu tych danych)

oprocz tego trzeba jeszcze zrobic identyczna kopie tej tablicy bo jedna trzyma nazwy na stale a druga wypelnia
prawdziwymi wskaznikami do implementacji
loader windowsa

na koniec w tej tablicy z punktu 1) wypelnie sie wskazniki do tych 2 list, 
i do nazwy modulu dla kazdego modulu

w sumie to powinno dzialac sa tylko dwie wspomniene niedogodnosci
1) mozna osiagnac limit kwadratowej tablicy
2) ta funkcja przechodzenia z x,y na linerana kolejnosc jest drobinke glupia/brzydka

w sumie pewnie trzebbylo to zrobic inaczej tj budowac liste par modul-funkcja na koniec ja posortowac i nie byloby straty pamieci i linearny porzadek
sam by sie zrobil, ale chyba zalozylem ze kwadratowa tablica bedzie prostsza (nie trzeba bylo pisac sortowania ;c

na razie chyba zrobie na kwadratowej moze kiedys pozniej poprawie na ta liste 1d - ew nastepnym razem bedzie wiadomo by takie przypadki robic od razu na liscie 1d




Back to pl.comp.programming | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

(announce) organic asm fir <profesor.fir@gmail.com> - 2017-08-24 16:05 -0700
  Re: (announce) organic asm fir <profesor.fir@gmail.com> - 2017-08-25 01:15 -0700
    Re: (announce) organic asm fir <profesor.fir@gmail.com> - 2017-08-25 10:26 -0700
      Re: (announce) organic asm fir <profesor.fir@gmail.com> - 2017-08-26 02:40 -0700
        Re: (announce) organic asm fir <profesor.fir@gmail.com> - 2017-08-26 02:43 -0700
  [OT] (announce) organic asm wół, wół roboczy, wół dojno roboczo obronny 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2017-08-30 19:04 +0200
    Re: [OT] (announce) organic asm wół, wół roboczy, wół dojno roboczo obronny 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2017-09-03 20:47 +0200
      Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-03 14:02 -0700
        Re: [OT] (announce) organic asm wół, wół roboczy, wół dojno roboczo obronny 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2017-09-04 21:14 +0200
          Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-04 13:20 -0700
            Re: [OT] (announce) organic asm Szyk Cech <szyk100@o2.pl> - 2017-09-05 00:13 +0200
              Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-05 02:16 -0700
                Re: [OT] (announce) organic asm "M.M." <mmarszik@gmail.com> - 2017-09-06 04:17 -0700
                Re: [OT] (announce) organic asm w systemie siła 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2017-09-06 14:15 +0200
                Re: [OT] (announce) organic asm w systemie siła 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2017-09-06 16:53 +0200
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-06 07:57 -0700
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-06 08:02 -0700
                Re: [OT] (announce) organic asm "M.M." <mmarszik@gmail.com> - 2017-09-06 09:02 -0700
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-06 09:23 -0700
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-06 13:00 -0700
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-06 14:33 -0700
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-06 15:27 -0700
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-07 08:20 -0700
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-07 10:52 -0700
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-07 16:12 -0700
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-07 16:27 -0700
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-08 15:17 -0700
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-09 05:20 -0700
                Re: [OT] (announce) organic asm wół, wół roboczy, wół dojno roboczo obronny 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2017-09-09 21:57 +0200
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-09 16:50 -0700
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-10 02:33 -0700
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-11 07:55 -0700
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-11 08:03 -0700
                Re: [OT] (announce) organic asm "M.M." <mmarszik@gmail.com> - 2017-09-12 05:57 -0700
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-12 07:59 -0700
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-13 14:59 -0700
                Re: [OT] (announce) organic asm wół, wół roboczy, wół dojno roboczo obronny 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2017-09-14 21:11 +0200
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-14 13:08 -0700
                Re: [OT] (announce) organic asm wół, wół roboczy, wół dojno roboczo obronny 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2017-09-15 21:43 +0200
                Re: [OT] (announce) organic asm wół, wół roboczy, wół dojno roboczo obronny 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2017-09-06 21:01 +0200
                Re: [OT] (announce) organic asm Roman Tyczka <noemail@because.no> - 2017-09-06 21:59 +0200
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-06 13:35 -0700
                Re: [OT] (announce) organic asm Szyk Cech <szyk100@o2.pl> - 2017-09-07 01:16 +0200
                Re: [OT] (announce) organic asm wloochacz <wloochacz@no.spam.gmail.com> - 2017-09-07 17:46 +0200
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-07 10:11 -0700
                Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-07 10:53 -0700
                Re: [OT] (announce) organic asm wół, wół roboczy, wół dojno roboczo obronny 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2017-09-07 20:17 +0200
                Re: [OT] (announce) organic asm "AK" <nobody@nowhere.net> - 2017-12-22 12:18 +0100
                Re: [OT] (announce) organic asm "M.M." <mmarszik@gmail.com> - 2017-12-22 03:33 -0800
                Re: [OT] (announce) organic asm "AK" <nobody@nowhere.net> - 2017-12-22 12:47 +0100
                Re: [OT] (announce) organic asm Wojciech Muła <wojtek.mula@gmail.com> - 2017-12-22 11:10 -0800
                Re: [OT] (announce) organic asm "AK" <nobody@nowhere.net> - 2017-12-22 20:54 +0100
                Re: [OT] (announce) organic asm Yakhub <aa@aa.aa> - 2017-12-24 19:30 +0100
                Re: [OT] (announce) organic asm Wojciech Muła <wojtek.mula@gmail.com> - 2017-12-30 10:38 -0800
                Re: [OT] (announce) organic asm Wojciech Muła <wojtek.mula@gmail.com> - 2017-12-30 10:21 -0800
                Re: [OT] (announce) organic asm "M.M." <mmarszik@gmail.com> - 2017-12-23 01:25 -0800
                Re: [OT] (announce) organic asm "AK" <nobody@nowhere.net> - 2017-12-23 12:58 +0100
                Re: [OT] (announce) organic asm Borneq <borneq@antyspam.hidden.pl> - 2017-12-23 14:50 +0100
                Re: [OT] (announce) organic asm Wojciech Muła <wojtek.mula@gmail.com> - 2017-12-30 10:31 -0800
      Re: [OT] (announce) organic asm wół, wół roboczy, wół dojno roboczo obronny 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2017-09-15 21:46 +0200
        Re: [OT] (announce) organic asm fir <profesor.fir@gmail.com> - 2017-09-15 13:16 -0700

csiph-web