flat assembler
Message board for the users of flat assembler.
Index
> OS Construction > FASM Challenge - For all users Goto page Previous 1, 2, 3 ... 11, 12, 13, 14, 15 Next |
Author |
|
dosin 10 Mar 2008, 19:55
Quote: but it does nothing True, it just goes throught the tags if finds a match.. skips it and and then continues... In order for it to do the proper graphics.. functions for the graphics would need to be finished... The prob is html is built of an existing gui... If this was the case it would be more complete.. The focus here is lost.... It would take months.. or longer to build all that is needed for the gui.. and as of now we can't connect or load anything.. I think we need to focus on the connect to the net - get page and diplay it.. in text format and after serveral drivers are made for different cards.. then focus on the graphics... This one I uploaded is for adding too... for example find the <b> function .. set font to bold.. Code: bold: ;<-set bold font.. mov txt.bold,1 ;sets font bold pbold: mov eax,dword[esi + edx] inc edx cmp al,'<' ;this is here because we dont want to print the '<' to screen je nxt call put_char nxt: cmp eax,'</b>' jne pbold add edx,3 ;<-reset text to prev...or default mov txt.bold,0 ;turn bold off ret txt.bold would be added to the txt. function.. I did this and it worked.. but removed for now until all tags and conditions were completed... When work slows down I will rewrite.. to simplify it more... and finish it... It works.. but all gui fuctions are not added /tags.. it will just narrow down to plain text... there is a complete list of tags in the html.inc.. This is the one that will be used in my next version.. but all its going to do is remove the tags and print plain text.. the gui will need to be added... |
|||
10 Mar 2008, 19:55 |
|
edfed 10 Mar 2008, 20:06
Now, let speak about the gui. i'm sure we can code a gui with a html file, then, no need of any other lib than the html one.
But before, we need to have html parsing complete and networking (remember the goal of this project)... Interpret html in my opinion is not really hard, but before, we would have an other coding style, oriented not open/end but open/close. For exemple, <html> when crossed, the parser will seek the </html> tag, and then, virtual limit the file to what is between the two tags, and call the tag module. The main called function is the char read and interpret, the secondary functions are all that set some parameters or flags into the html engine. These flags wil be virtual. not in memory, just in mind. the f.asm object will reset some parameters in order to make the initialisation of the environment. In this way, <title> will clear the "TITLE" destination avoiding the redifinition of new titles. For example, table, it will set the table flag, that is tested at main level, and will execute a specific table algorythm, with the main one who read and parse. i feel i'll soon find the way to do that. possibly i'll have some working parsing tonight. I've made a basic vector font, then, we can set the style easy. like bold is just a larger font lines, and italic is an oblic line. then, no need of bold or italic flags, just two parameters: angle and stretch. color, stretch, angle and dressing if we want to add drawings or effects to the font. Last edited by edfed on 10 Apr 2008, 01:05; edited 1 time in total |
|||
10 Mar 2008, 20:06 |
|
edfed 20 Mar 2008, 03:46
the main component is ok, ready for tests and expansion.
this is the current achievement on parser. a gui is ready for easy tests. for the moment, the parser only output to a unique string. will write to multiple strings, to create text zones. Code: set end and start of the INPUT and OUTPUT PARSE: INPUT from the html file. if the char is '<', tezt if it is a tag. if the tag is valid, then, call tag function if tag function is ok, goto INPUT is it a special char? convert it to OUTPUT. multiple spaces, tabs, CR are concsidered as one unique space OUTPUT char ret the parser, XHTML.inc, is a function to convert a XHTML file to a string. there is no item building for the moment. the idea is to assign for each tag a function. the function will have many parameters, named attributes. seek the attributes, set them, and create an item if needed. for example, the <br> tag, it will execute this: Code: .br: @@: call seek.openend jnc @f mov word[edi],0a0dh add edi,2 stc @@: ret in the future, the function will be layered, then, they will play with a variable size inputs and outputs. fixing the end of input or output buffer for tag execution. edit: hey, if it don't interrest anybody, it will die... ! Last edited by edfed on 01 Apr 2008, 03:08; edited 4 times in total |
|||
20 Mar 2008, 03:46 |
|
Dex4u 20 Mar 2008, 21:12
Nice work edfed, i am still very interested, but as i posted just got to get the latest DexOS ver released first, then i will add the browser to DexOS (much simpler for testing and using DexOS tcp/ip stack functions), once it working right i will add it to the FAB.
|
|||
20 Mar 2008, 21:12 |
|
edfed 20 Mar 2008, 21:41
i saw, you are working on dex os.
if you want, u can add this (xhtml.zip) to dexos. it will work! it is for real mode 320*200.it don't know dos interrupts. Code: to make: --- title don't work --- p simulate paragraph by CR --- br don't depend on colse tag --- table, td, and a simulate their zones with a CR --- all the other tags are empty. how to code a tag interpret function? Code: create it's name and funtion pointer at: t: ... .tag% dd f€uro.tag% ; function pointer dd t€uro.tag% ; tag name pointer ... ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; f€uro: ... .tag% db 'tag%',0 ... ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; t€uro: ... .tag%: ; esi point to current char in input file ; edx point just before the tag ; edi point to output buffer ; play with eax, ebx ecx edx esi edi and ebp to obtain the desired effect. call seek.openend ; to find the end of open tag jnc @f ; if carry not set, then, it wasn't a good tag stc ; set the carry flag to say it was a good tag, and all goes well ret ; as result, the tag will disapear of the output @@: ctc ; clear carry to say it wasn't a valid tag ret ; as result, the tag will be in the output need to add a lot of things :warmteapot-head: Last edited by edfed on 09 Apr 2008, 01:47; edited 1 time in total |
|||
20 Mar 2008, 21:41 |
|
Dex4u 21 Mar 2008, 12:23
edfed wrote: need to add a lot of things :warmteapot-head: you can not beat a nice cup of tea and thanks i will use it in DexOS. |
|||
21 Mar 2008, 12:23 |
|
edfed 29 Mar 2008, 17:13
He he, it start to be interresting.
The only things to do now, are the network driver and the tag modules. Each tags have it's own module for executing, like if it was commands. And the mechanism can be used as a command line interpreter. All depend on the modules. For the moment, it's a pure dumb xml parser because it take care of < >. But by replacing it by [](/b] it can become a BBcode interpret. with[b] / or \ it can be a file system interpret. etc... A list of OK tags ( a list of non ok tags wil be too long): <title>; creates the title without any problem </title> <br> will make a CR. need to be xhtml now, like this: <br/> <pre> will output the file as it is , no intra tags for the moment </pre> <!-- comments are ignored, the comment routine jump over the comments --> Special ASCII chars OK, &abc; &# 123;   Many other tags use the <br> function, to simulate the sections, like <table>, <option>, <p> etc. note: if we make a good browser for 320*200, with a sweet and optimal presentation, just imagine what can be the result in high resolutions... advantage of 320*200 .COM executables are various: ease of programming, boot compatibiliity, simple to understand, fast... inconvenients are only two: palette limitation and low resolution. added a strange page: gerror.html , if somebody can explain why i had this one? Last edited by edfed on 10 Apr 2008, 00:54; edited 3 times in total |
|||
29 Mar 2008, 17:13 |
|
System86 07 Apr 2008, 22:56
For palette limitation in mode 13h, you can reprogram the palette using ports 3C8h/3C9h. Of course you can only display 256 colors at a time, but this is the best standard VGA can do. If you want more colors you need to use VESA.
|
|||
07 Apr 2008, 22:56 |
|
edfed 08 Apr 2008, 14:27
thanks System86 for the suggestion, but i still know that.
now, lets go for the network layers. ho my god, how it is hard! if anybody have a link to the accton EN2242 specs and a very good tutorial about network layers, thanks. the bootloader (comload.asm) will be a separate file. the .com executable will be loaded "as is" from the second sector. each packages have one different version of the BW05.com utility. comload will be put on the 1st sector .com binary will be writen from 2nd sector.
|
|||||||||||
08 Apr 2008, 14:27 |
|
craciun 07 Jul 2008, 14:13
hi, i'm writing an educational operating system at the moment, it is in 2nd stage boot loader and will advance shortly, i expect it to be compatibile with real-mode, protected-mode and long-mode, user-switchable and also multitasking with a different concept than windows and linux use for displayng the so called windows. it will use two GUI 2d and 3d, and i need some help here. i've been looking for a server to make a homepage but didn't found yet.
|
|||
07 Jul 2008, 14:13 |
|
edfed 07 Jul 2008, 20:58
there is no network layer for the moment.
i don't know how to code it now, but i found some cards to try. Ethernet cards: Realtek RTL8019A, with BNC and RJ45 connectors. D-Link FDE-530TX with RJ45 connector. Modem card: Conexant RS56-PCI R6793-12 i hope to find some code in ASM to control them,n and then, access the network. it is the condition to obtain a strong network layer, i think... and maybe one day, we'll have something bootable, able to navigate on the web, make a server, a client, and build local networks. but for the moment, it is in standby, need some boost and time. [cracium]have you posted a little demo of your os? |
|||
07 Jul 2008, 20:58 |
|
Dex4u 08 Jul 2008, 16:16
I am still working on this project, but i am deving it in side DexOS, to run as a user program, i can boot and auto load the program in two seconds.
So it still for fills the rules of the Challenge. First thing we need to do is boot and load a "hello world!" htm page from the internet. Then we move on. |
|||
08 Jul 2008, 16:16 |
|
tom tobias 09 Jul 2008, 09:33
Dex4u wrote: I am still working on this project... edfed wrote:
Different people mean different things when discussing network protocols. For example, in universities, the 7 layer OSI model is followed, however, in commerce, it is my understanding, that the older 4 layer model is employed. The "Network" layer, found in both models, is somewhat different, i.e. they are not precisely synonymous, although the same word, "network" is applied to a particular layer in both models. Further, some people write "network", and perhaps do not fully realize that this word refers to ONE layer of the several layers of protocol, or alternatively, when writing "network", some people intend to describe ALL the layers, not just the "network" layer of either the 4 layer model, or the 7 layer model. Here are some references. I assume, perhaps incorrectly, that it is desirable to access a tutorial explaining the different bit fields of THE NETWORK layer of the 4 layer model. But, as not too infrequently, I may be completely wrong, if so, my sincere apologies. 4 layer internet model, compared with 7 layer OSI model (only definitions,...) 40 pdf files free download, OSI based. explanation of X.25 (of OSI NETWORK layer) i.e. NOT the same as Network layer of 4 layer internet model... C program for Internet Network protocol layer, with code tiny fragment of a book please advise if this book seems useful--I will procure it, if so. another tutorial with definitions http://www.softpanorama.org/Net/Articles/osi_protocol_layers_tutorial.shtml http://www.pcsupportadvisor.com/TCP_IP_tutorial_page2.htm ISO/IEC TR 9577 address resolution, very high level and probably not too helpful |
|||
09 Jul 2008, 09:33 |
|
edfed 27 Aug 2008, 19:13
too difficult.
|
|||
27 Aug 2008, 19:13 |
|
Dex4u 27 Aug 2008, 20:43
Try this ServerImage.zip from my web site http://dex4u.com/download.htm
You will need a rtl8139 and a DHCP server on the network or you can set it up manual. If that works then you have a stack. See the ReadMe file for setting up info. |
|||
27 Aug 2008, 20:43 |
|
dosin 10 Sep 2008, 02:12
Good to see this project is still alive...
I needed a brake from it for a while for a new/fresh look at things... I am starting back up with the parser... It gets frustrating with all thats left to right .. more or less overwelming... I am taking it step by step until the parser is done!!! any sugestions are welcome! |
|||
10 Sep 2008, 02:12 |
|
Dex4u 10 Sep 2008, 13:21
Hi dosin, nice to hear your back, maybe you could take a look at the source of fasm.
|
|||
10 Sep 2008, 13:21 |
|
dosin 11 Sep 2008, 03:51
Small shot of the FBrowser Project New Desktop:
|
|||
11 Sep 2008, 03:51 |
|
edfed 11 Sep 2008, 20:49
fine, very beautyfull background.
maybe used as a little artistic feature. if no site or file available, then, it will display it in background and a little scrolling message in the sky to say there is nothing to view. or at the startup, a sort of fall on the sea from the sky, very fast ( monitor of startup) diving into the water, and when it's ok, it shows this picture, and fade to gray. items appears, and that's all. do this animation while system loads, in 3 seconds. |
|||
11 Sep 2008, 20:49 |
|
Goto page Previous 1, 2, 3 ... 11, 12, 13, 14, 15 Next < Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.