flat assembler
Message board for the users of flat assembler.

Index > OS Construction > FASM Challenge - For all users

Goto page Previous  1, 2, 3 ... 10, 11, 12, 13, 14, 15  Next
Author
Thread Post new topic Reply to topic
Dex4u



Joined: 08 Feb 2005
Posts: 1601
Location: web
Dex4u
edfed wrote:

please, listen, fat16is a proprietary file system.
and as i said, no partition table and no file system will simpify the project a lot.

Fat16 is not a proprietary file system, as in you can not use it, its the long file names that are still under patent, as long as you stick to 8 letter + ext your ok.

I could not use mode 13, it would look terrible, once my text modes test are done, then we can decide, mode 12 is a possibility.

PS: I will post a fat16 hdd test program, for you to test tom tobias.
Post 02 Mar 2008, 14:41
View user's profile Send private message Reply with quote
edfed



Joined: 20 Feb 2006
Posts: 4242
Location: 2018
edfed
erf, long file names are a nececity.
we need long file names in case of network threading.

how can we remember cookies, if they are only 8.3 file names long?

i think we can easily make a new file system with LFN, and free, totally free.

build a file system is not a big problem. the problem are the routines for file accesses and r/w.

i proposed a file system that support very long file names (up to 4G chars) and very little file names ( only one char) without minimal size.

but a file system is not needed for the start of FAB.

MS DOS and all inside are OBSOLETE.
Post 02 Mar 2008, 15:03
View user's profile Send private message Visit poster's website Reply with quote
Dex4u



Joined: 08 Feb 2005
Posts: 1601
Location: web
Dex4u
As far as i was thinking there will be no writing to hdd, as the driver will be read only, maybe a file could be read at startup, but no write to hdd, it should run in ram only, as in (READ ONLY).
Post 02 Mar 2008, 15:47
View user's profile Send private message Reply with quote
edfed



Joined: 20 Feb 2006
Posts: 4242
Location: 2018
edfed
noway, it shall write on drive, to prefetch some pages, remember the history, cf, back, forward...
and then, be able to modify the code with a fasm plugin.

it's not as simple as it seems.

the ram is not enough to remember all the site for off line consulting.

in case of no network, it shall display the forum, with the important topics. or at least the FAB thread. without connection.

imagine, if FAB cannot acces the netwok, the program will do nothing, and it's not rare to have server errors, i meat this ones a day minimum. close to 17H french. when many guys are using the network at home in my town. the band pass is soo poor that it cannot join fasm board server. in this case, offline connection is a need.
Post 02 Mar 2008, 16:17
View user's profile Send private message Visit poster's website Reply with quote
tom tobias



Joined: 09 Sep 2003
Posts: 1320
Location: usa
tom tobias
edfed wrote:
...it's not as simple as it seems....
Here, one must inquire what "it's" refers to? Do you wish to express the notion that FAB can not be introduced as a "simple" program? Do you mean, contrarily, to express the sentiment that the protocol exchange process is of sufficient complexity that one MUST write to hard disk, to accomplish the connection??? Alternatively, are you projecting ahead, some time in the future, maybe a week, maybe a month, when FAB is somewhat further along, than it is today, (still without a working "hello, world" program, having nothing to do with accessing the ethernet controller chip, or displaying the elapsed time...), and imagining a sort of "improvement" which adds complexity? What exactly is not simple? Why do you write:
Quote:
the ram is not enough to remember all the site for off line consulting
How much RAM does it take for "off line" consulting? Why would one want to perform "off line" consulting for FAB? Most modern machines have AT LEAST 256 Mbytes RAM. That amount of memory corresponds to a huge quantity of web pages.....So far as I understand FAB project, we only need to see ONE PAGE, to fulfill the obligation to boot into FASM forum within 3 seconds, post POST. I fail to understand what FAB has to do with "offline browsing".
Confused
Smile
Post 02 Mar 2008, 17:51
View user's profile Send private message Reply with quote
edfed



Joined: 20 Feb 2006
Posts: 4242
Location: 2018
edfed
but, when the machine is shut off, the site disapear of ram. and then it disapear of all the machine.

but yes, saving on drive is not an important point for the moment as we don't have any operational IP connection.

tom, i'm pretty sure that you'll soon be able to code your bootable "hello world", as you have all that you need for.

i'll not make it for you, no? the goal is to force you to understand, and be able to code your hello world by yourself.

enjoy, man, enjoy.

if your test drive is the primary master, then the drive number is 80h
disk:
.drive db 80h
Post 02 Mar 2008, 19:07
View user's profile Send private message Visit poster's website Reply with quote
Dex4u



Joined: 08 Feb 2005
Posts: 1601
Location: web
Dex4u
Just for the record everything needed for this project is coded already,other than a browser Smile.
I have already done the rest for DexOS, i also thing that 256 of ram is plenty for FAB needs.
Post 02 Mar 2008, 19:11
View user's profile Send private message Reply with quote
edfed



Joined: 20 Feb 2006
Posts: 4242
Location: 2018
edfed
can it browse the fasm board in less than 3 seconds from bootloading?

if yes, then, the contest can start. objectives..., smaller executable, faster start, better interface, offline connection, extrafeatures, scalability, hardware accalerations, text mode, etc...
there will be so many different FAB versions, with totaly different interfaces, free to use and modify if modification is for the contest, that it will be amazing to code an own version or cloning, but in respect of the 3 seconds and a relativelly small executable.


this softcontest will be amazing.
Post 04 Mar 2008, 23:47
View user's profile Send private message Visit poster's website Reply with quote
AlexP



Joined: 14 Nov 2007
Posts: 561
Location: Out the window. Yes, that one.
AlexP
- just re-saw this thread-
Is this OS project still running? I think I can contribute... about 5-6 hrs a day I can work on what's given, I'd love 2 learn anything presented to me!

[EDIT]: alexpatterson@hasd.org,
Post 05 Mar 2008, 00:26
View user's profile Send private message Visit poster's website Reply with quote
Dex4u



Joined: 08 Feb 2005
Posts: 1601
Location: web
Dex4u
@edfed, if theres no web browser yet, how can it browse the forum yet ;)

@AlexP, Sure it still running, i will just be busy for the next 2 weeks as i am finishing the latest release of my OS.
As for FAB (FLAT Assembler Browser) all help is welcome.

Here is what's done so far http://www.dex4u.com/FAB/Fab.zip
And to test in qemu use this: http://www.dex4u.com/FAB/FabE.zip

If you like what you see and want to help, let us know and i will post the source code.
Though we may change from vesa to text mode.
Post 05 Mar 2008, 03:56
View user's profile Send private message Reply with quote
edfed



Joined: 20 Feb 2006
Posts: 4242
Location: 2018
edfed
post it now. i need some code to work.
what can do your FAB?
Post 05 Mar 2008, 12:26
View user's profile Send private message Visit poster's website Reply with quote
Dex4u



Joined: 08 Feb 2005
Posts: 1601
Location: web
Dex4u
Its the same as you downloaded last time, i have not add anything.
You should already have it ? .
Post 05 Mar 2008, 16:11
View user's profile Send private message Reply with quote
AlexP



Joined: 14 Nov 2007
Posts: 561
Location: Out the window. Yes, that one.
AlexP
I would love to help, but I know nothing of web programming.... ( I mean like connections, certificates, all that stuff...) I'm sorry to say also that I have not had experience with Windows GUI programming, so if there's anything that I can do to help I would love to know.

PS: I have 208 instructions, mostly stosd, barely any mov. Someone else has similar code, and their's executes in ~300 cycles, is mine faster?

[EDIT] That self-extractor contains some pretty poor english, shouldn't you have someone else (with english as a 1st language) do that stuff?
Post 05 Mar 2008, 22:46
View user's profile Send private message Visit poster's website Reply with quote
Dex4u



Joined: 08 Feb 2005
Posts: 1601
Location: web
Dex4u
AlexP wrote:

[EDIT] That self-extractor contains some pretty poor english, shouldn't you have someone else (with english as a 1st language) do that stuff?

Can you give us a example of this poor english ?.
Post 06 Mar 2008, 04:59
View user's profile Send private message Reply with quote
tom tobias



Joined: 09 Sep 2003
Posts: 1320
Location: usa
tom tobias
AlexP wrote:
...some pretty poor english...
I suppose, quite contrarily, that you intended to write: "...some relatively mediocre English...", since "pretty" is synonomous with attractive, (a meaning in opposition to the intention of your comment,) and since proper English writing requires capitalization of certain nouns, among them, English itself, in harmony with our mongrel languages' principal ancestor: GERMAN.

I would argue however, these two points:
a. This forum welcomes participation, despite our collective mediocrity with any number of languages, and, among the native speakers of English, some of us (kohlrak comes to mind!) have a tendency to spell words as they sound, and the problem then, is NOT with the author, but with the language itself, for English is NOTORIOUSLY anti-phonetic ("enough").
b. Some of us, including me, err not merely with linguistic constructs, but also have difficulty understanding the far more important, fundamental mathematics which underlie this marvelous computer science. One sure thing: we are, none of us on the FASM forum, perfect communicators!
In my opinion, rather than pursue this issue of English correctness in documentation, we should devote our energy, instead, to improving the specification of FAB, a task which requires a willingness for openness and forthright expression, (such as Dex has demonstrated FOR MANY YEARS,) but not necessarily precision with English per se, for the entire specification of the FAB project could be elaborated using phrases, lists, and isolated words, without any concern for grammar, punctuation, or spelling, and still represent an excellent authority, explaining precisely this forum's intentions in developing this project. Further, foregoing discussion of ostensible English language deficiencies, is in harmony with Dex' initial submission to the forum on this topic: keep the project simple. Applying Dex' useful admonition, one would emphasize the SUBSTANCE rather than the appearance--an idea that strikes me, at least, as very reasonable, and therefore, whether or not there are, or are not, certain English "errors" in a particular document is fundamentally irrelevant. We should ignore any supposed shortcomings with our infernal English, in my opinion, and emphasize instead, those areas in this project which truly need elaboration, commencing with collective agreement on the specification of FAB, a task which turns out to be somewhat less facile than envisioned at the outset, since, to date, we have not yet been able to reach accord on the hardware demanded by FAB (floppy, versus one hard disk, versus two hard disks!)
Smile
Post 06 Mar 2008, 10:29
View user's profile Send private message Reply with quote
Dex4u



Joined: 08 Feb 2005
Posts: 1601
Location: web
Dex4u
Nicely put tom tobias, but the funny thing is, that the program that he refers to "self-extractor" Is not coded by anyone from this project, or forum.
But is a program that must have had over a million downloads and used by many projects all over the world.
Namely "WinImage" available here:
http://www.winimage.com/winimage.htm
There's no add text by any member of Team FAB to that "self-extractor" exe, other than the name of file.
So i do not know, what bad English he is referring to ?.
Post 06 Mar 2008, 16:04
View user's profile Send private message Reply with quote
AlexP



Joined: 14 Nov 2007
Posts: 561
Location: Out the window. Yes, that one.
AlexP
Quote:
I suppose, quite contrarily, that you intended to write: "...some relatively mediocre English...", since "pretty" is synonomous with attractive, (a meaning in opposition to the intention of your comment,) and since proper English writing requires capitalization of certain nouns,

Yes, English is a "garbage language", and I have spoken with someone who needed over 6 years on a professional level to speak as fluently as us, but if you are born to this language your eyes are closed to how it really is in comparison to the vocals of the world.

[EDIT] Sorry for the misconception, I just saw the interface's spelling flaws, didn't mean anything personal.
Post 06 Mar 2008, 21:51
View user's profile Send private message Visit poster's website Reply with quote
edfed



Joined: 20 Feb 2006
Posts: 4242
Location: 2018
edfed
i propose to speak only asm, and more preciselly Fasm.
because it is the site about fasm.
for exemple, me, i canot read or participate on topics about macros, because i don't understand the macro mechanism.
but on some pure X86 algorythm, i feel very good, even it is commented in chinese or labeled with @@: @f @b $+4 etc... because it is pure addressing and exact value refencence.
but macro are tooo much hll for me..

[don't read]
if you are really good in asm, then you can modify it, in the limit of 1024 bytes to add the displacement with the keybord, and probably a variable curve like a random tube, with collisions and enemies, with extra levels in another dimension, and some music in the limit of 128 k bytes.
[/don't read]


Code:
;  (Ü) ( ) Ü ) ( )   256b intro by baze/3SC for Syndeecate 2001   use FASM to
;  ßÛß ÛÜÛ ÛÛÛ ÛÛÜ   loveC: thanks, Serzh: eat my socks dude ;]   compile the
;  ( ) ( ) ( ) ( )   e-mail: baze@stonline.sk, web: www.3SC.sk    source code
SCREEN=160
PIXBUF=204h
        org     100h
        mov     al,13h
        int     10h
        push    word 0A000h
        pop     es
        mov     ax,cs
        add     ah,10h
        mov     fs,ax
        xor     cx,cx
PAL1:
        mov     dx,3C8h
        mov     ax,cx
        out     dx,al
        inc     dx
        sar     al,1
        js      PAL2
        out     dx,al
        mul     al
        shr     ax,6
        out     dx,al
PAL2:
        mov     al,0
        out     dx,al
        jns     PAL3
        sub     al,cl
        shr     al,1
        out     dx,al
        shr     al,1
        out     dx,al
PAL3:
        mov     bx,cx
        mov     [fs:bx],bl
        loop    PAL1
TEX:
        mov     bx,cx
        add     ax,cx
        rol     ax,cl
        mov     dh,al
        sar     dh,5
        adc     dl,dh
        adc     dl,[fs:bx+255]
        shr     dl,1
        mov     [fs:bx],dl
        not     bh
        mov     [fs:bx],dl
        loop    TEX
        fninit
        fldz
MAIN:
        add     bh,1
        mov     di,PIXBUF
        fadd    dword [di-PIXBUF+TEXUV-4]
        push    di
        mov     dx,-100
TUBEY:
        mov     bp,-160
TUBEX:
        mov     si,TEXUV
        fild    word [si-TEXUV+EYE]
        mov     [si],bp
        fild    word [si]
        mov     [si],dx
        fild    word [si]

        mov     cl,2
ROTATE:
        fld     st3
        fsincos
        fld     st2
        fmul    st0,st1
        fld     st4
        fmul    st0,st3
        fsubp   st1,st0
        fxch    st3
        fmulp   st2,st0
        fmulp   st3,st0
        faddp   st2,st0
        fxch    st2
        loop    ROTATE
        fld     st1
        fmul    st0,st0
        fld     st1
        fmul    st0,st0
        faddp   st1,st0
        fsqrt
        fdivp   st3,st0
        fpatan
        fimul   word [si-4]
        fistp   word [si]
        fimul   word [si-4]
        fistp   word [si+1]
        mov     si,[si]
        lea     ax,[bx+si]
        add     al,ah
        and     al,64
        mov     al,-16
        jz      STORE!
        shl     si,2
        lea     ax,[bx+si]
        sub     al,ah
        mov     al,-16
        jns     STORE!
        shl     si,1
        mov     al,-48
STORE!:
        add     al,[fs:bx+si]
        add     [di],al
        inc     di
        inc     bp
        cmp     bp,160
EYE=$-2
        jnz     TUBEX
        inc     dx
        cmp     dx, 80
        jnz     TUBEY
        pop     si
        mov     di,(100-SCREEN/2)*320
        mov     ch,(SCREEN/2)*320/256
        rep     movsw
        mov     ch,SCREEN*320/256
BLUR:
        dec     si
        sar     byte [si],2
        loop    BLUR
        in      al,60h
        cbw
        dec     ax
        jnz     near MAIN
        mov     al,03h
        int     10h
        db      41,0,0C3h,3Ch
TEXUV   db      "baze"
    


this code come from 256b.com it is not from me, i'm not soo good.
then, it easy to analyse the code and understand how this little demo is capable of doing this.

PS:
you can try it, i've tested and it's OK, no bug, hit escape to exit.
Post 06 Mar 2008, 22:27
View user's profile Send private message Visit poster's website Reply with quote
edfed



Joined: 20 Feb 2006
Posts: 4242
Location: 2018
edfed
then to speak about non asm tricks, but more the hll version of coding.

in html parsing, there is a riddle, the collisions, with mouse cursors, and execution of the link.

to make it, i try to code the collision detection function (sion, tion, tion) between a pointer (x,y,xl,yl) and a group of items (count,x,y,xl,yl)
this function then execute a routine refered either by the cursor or the item to test.

it will be like a keyboard, but on the screen, and to put the text from html, i thing that it is possible, as the first pass will count the needed items and bytes to build the GUI (html to gui).
ones the items are created, the parser will put the real environment variables, as the font, the colors (from css) and the buttons, with images, boxes, texts, nothing, etc...
ones the html is converted in a gui, it will execute the gui, until the html is refreshed. or a new page loaded.
the time to convert and then have to execute a gui based on OOP will be good for speed and evolutivity.

then, to parse the html, there are needed the definition of each tags, one tags = one command
and the parser will interpret the html like commands, build the page (gui) and display it, interact with mouse, keyboard etc...

i don't see the utility of a txt html parser.
the 320*200 mode is not so poor, it is possible to build a very little font, then increase the number of chars on screen, the colors, the ease of the programming...

to change a value of the palette, for exemple, the background when the corresponding tag is read:

Code:
;;;this is for 32 bit /pixel
mov eax,[esi+.param] ;this is the color
mov esi,[esi+.value]  ;this is the destination in memory.
mov [esi],eax
ret
;;;this is for mode 13h 18bit /color
mov eax,[esi+.param]; this is the 32 bit color
shr eax,2
and eax,03F3F3Fh  ; this will erase the carryes.
mov esi,[esi+.value] ; this is the color in user palette, a table in ram.
mov [esi],eax
ret
    

.param is the value from the html command. for example; 09090BBh.
.value is a pointer to a place in the OO code. can be the color of the main (first) box to render, or the color when refresh and clear buffer..
Post 08 Mar 2008, 01:05
View user's profile Send private message Visit poster's website Reply with quote
dosin



Joined: 24 Aug 2007
Posts: 337
dosin
The uploaded version..

This version is not complete Exclamation

removed!


Last edited by dosin on 10 Mar 2008, 17:58; edited 1 time in total
Post 10 Mar 2008, 01:47
View user's profile Send private message Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  
Goto page Previous  1, 2, 3 ... 10, 11, 12, 13, 14, 15  Next

< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2020, Tomasz Grysztar. Also on GitHub, YouTube, Twitter.

Website powered by rwasa.