eric-develop Mailing List for Eric (Page 3)
Status: Pre-Alpha
Brought to you by:
andrew_turner
You can subscribe to this list here.
| 2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(164) |
Aug
(147) |
Sep
(25) |
Oct
(2) |
Nov
|
Dec
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2002 |
Jan
(3) |
Feb
(3) |
Mar
(3) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Gavin R. B. <ga...@ga...> - 2001-08-28 19:37:25
|
Andy, I have been thinking about the situation with our coders. The spec. has been up for several days now, but no-one has yet attempted to code a line of it. Sorry to sound negative, but I think there is something wrong here. We are stuck in a productivity rut. Originally, I felt that too many cooks would almost certainly 'spoil the broth', but now I feel differently. If we could all get together physically in the same building, every day, with a private network of 500Mhz+ machines, then the conventional teaching on managing software projects would suffice. The trouble is, it doesnt. I remember looking at the 99% projects on Sourceforge, and they have 20+ coders. Sourceforge.net is very well worked-out; if we double, maybe even quadruple the number of coders we have, there could be coding going on 24 hours a day, seven days a week. And every person need only do a small amount of work themselves. It's just like the timesharing concept in modern OSs. With a firm foundation, and clear code layout and specs, (contributed by ourselves, as a decentralized net of admins), we could oversee what has already become a VAST project. I got this idea from a reading we took from the I-Ching. It basically said that if we create a 'great vehicle' and attract many followers, then we can make this wondeful seed of yours a burgeoning reality. Then VOYAGER will have truly become VGER. Let's start the Revolution. Gavin. |
|
From: Gavin R. B. <ga...@ga...> - 2001-08-27 12:27:40
|
Guys, Check this out: http://users.ipa.net/~dwighth/smalltalk/bluebook/ It's got a nearly complete compiler spec for Smalltalk-80, (darn near what Xerox-PARC came up with originally)... Thanx, Gavin. |
|
From: Gavin R. B. <ga...@ga...> - 2001-08-27 10:28:35
|
Andy, Woz, & folks, I have been considering different languages for re-creating Eric; and have found some fault in all the mainstream commercial ones; e.g. Ada, Python, Java etc.. There is only one truly pure OO language that we can trust, and has the most clear and beautiful syntax. That language is Smalltalk. Like hey, we can take the Smalltalk spec. a copy of GNU-Smalltalk and build our own compiler for Eric! I firmly believe that Smalltalk beats the pants off of Sun's Java, and if we can tap into that power...man, we're onto something. It looks like the Revolution is well under way, Woz. Yours, Gavin. PS. Woz, could you do me a BIG favour? get me a contact for Steve Jobs? Basically I need Apple's help to get our multiprocessor off the ground...If you can do that, then you will be Master Yoda in our minds forever.. <|;-) |
|
From: Gavin R. B. <ga...@ga...> - 2001-08-27 10:18:39
|
Andy & Folks, I have just been looking at a copy of the Xerox blue book for Smalltalk, and apparently it mentions bytecode!!! this was YEARS before Sun even claimed to have been the inventors of Bytecode. Man, these monopolists have absolutely NO scruples.. http://users.ipa.net/~dwighth/smalltalk/bluebook/bluebook_chapter26.html#TheBytecodes26 All the best, Gavin. PS. Replies to eric-chat pls. |
|
From: Gavin R. B. <ga...@ga...> - 2001-08-26 19:23:41
|
Folks, To speed up development, I suggest that everyone download both Gnu-Mach and the Darwin kernel. Thanks. All the best, Gavin. |
|
From: Gavin R. B. <ga...@ga...> - 2001-08-26 16:23:27
|
> Ismail PAZARBASI wrote: > > Hey, > Guys, is there a problem with my firewall or us.chatjunkies.com? I > cannot ping server, coz my firewall does not accept ICMP packets. So, > I dunno whether it is alive or not. But I cannot connect through port > 6669-7000... I thought we can talk a little :D Watch out for hackers. I think M$ have gotten wind of our discovery and want to shut us up...I seem to be getting into 'us.chatjunkies.org' ok...perhaps you were trying to get into us.chatjunkies.*com*? > I am online for next 16 hours, this is through 8:30 local time (I > am on GMT+2.00). Kewl. You are my favourite developer so far. <|;-) > Gavin, 4.4 is still under development I think, I will talk its > status with guys. I think I can send you 4.3 RELEASE on Monday evening > via DHL. Ismail, I would recommend you be 'on the ball' about marketing FreeBSD. You seem very articulate, so perhaps communicating your ideas will not be a problem for you; burn in a stable version to a CD-R and submit it to a sympathetic Venture-Capitalist who is local in your area. When submitting a draft business idea, do the following: i) Write down 6 major reasons why customers would prefer using FreeBSD. (no jargon). ii) Visit a good bank and get them to help you draw up a cash-flow forecast etc. This sounds awfully complicated, but it really is a question of plugging a few formulas into the spreadsheet, and getting some basic figures. iii) Submit all these ideas + cash-flow-forecast to the Venture-Capitalist. By now, the guy will have tried out the software, and seen if he like it or not. If he does, you can take things from there. If he does not, find another dude. Suffice it to say that the OS you have running on your machine could be the secret to not ever having to worry about funding, (or working) again. There are, however, the responsibilities of being self-employed. The choice is yours. All the best, Gavin. PS. I am in the chatroom now if you want to speak to me.. d;-) |
|
From: Ismail P. <paz...@my...> - 2001-08-26 15:09:34
|
Hey,
Guys, is there a problem with my firewall or us.chatjunkies.com? I =
cannot ping server, coz my firewall does not accept ICMP packets. So, I =
dunno whether it is alive or not. But I cannot connect through port =
6669-7000... I thought we can talk a little :D
I am online for next 16 hours, this is through 8:30 local time (I am =
on GMT+2.00).
Gavin, 4.4 is still under development I think, I will talk its =
status with guys. I think I can send you 4.3 RELEASE on Monday evening =
via DHL.
Regards.
|
|
From: Gavin R. B. <ga...@ga...> - 2001-08-26 11:18:07
|
Andy, Could you change the name of the directory ebasic to eSmalltalk pls? I am going to be doing some major hacking of the interpreter source files in a few months time, and generally think BASIC is a bit of a tacky old learning language, compared with Smalltalk... Admitted I learnt BASIC originally, but it tends to corrupt folks to think functionally and use lots of GOTOs and other stuff. 'tis better to have kids learn a nice, clean, OO language such as Smalltalk. After all, arent we all Object revolutionaries? Thanx. Gav. |
|
From: Gavin R. B. <ga...@ga...> - 2001-08-25 18:17:31
|
Guys, I have been looking at some sample source code of Objective-C, and have found that there are some aesthetic caveats. (e.g. nonintuitive syntax) Perhaps it would be better if we were to look at Ada as a possible language to re-write Eric in? Ada supports concurrency in much the same way as Objective-C, but with a clearer syntax; It might be instructive to look at Eiffel and Python too... All the best, Gavin. -- ~--(Eric Developer)--~ http://eric.sourceforge.net |
|
From: Gavin R. B. <ga...@ga...> - 2001-08-25 14:26:52
|
Guys, I have decided to keep writing my ERFCs in text file format, since HTML standards may well be changing drastically in a few years time, but basic Text files will remain the same... That and the fact that I am now well aquainted with ASCII art. HTML is fine for specifications, but somehow it doesnt seem quite appropriate for ERFCs. All the RFCs on the Net are all in text only format as well.. Anyhow, that is enough petty nonsense. Just writing to explain why all my future ERFC's are going to look retro. Gav. |
|
From: Gavin R. B. <ga...@ga...> - 2001-08-25 14:11:47
|
> Ismail PAZARBASI wrote: > > Gavin, > > If you want a copy of FreeBSD 4.4 RELEASE copy (I mean, I > downloaded, and I wrote it to a CD), yes I can! If you want a box :)) > I am sorry, but I don' t have it also :/ We download it. I can send it > on Monday, I think. Is it alright? Sure thing buddy. Just a plain disk will do. d:-) All the best, Gavin. |
|
From: Ismail P. <paz...@my...> - 2001-08-25 13:38:27
|
Gavin,
If you want a copy of FreeBSD 4.4 RELEASE copy (I mean, I =
downloaded, and I wrote it to a CD), yes I can! If you want a box :)) I =
am sorry, but I don' t have it also :/ We download it. I can send it on =
Monday, I think. Is it alright?
Regards.
|
|
From: Gavin R. B. <ga...@ga...> - 2001-08-25 13:31:56
|
Ismail, Could you do me a BIG favour? I am stone broke at the moment, teetering on the abyss of my overdraft limit. Could you pls. send me a copy of the FreeBSD Disk via DHL to: 4 Trajan Close Abbeymead Gloucester GL4 5EZ UNITED KINGDOM If you could do that, you could save me a hellava lotta bother from micro$oft funded hackers...(damned virus freaks made me reformat my HDD from scratch...*grrr*) Thanx man, Gavin. |
|
From: Gavin R. B. <ga...@ga...> - 2001-08-25 13:26:25
|
Ismail, Come to think of it, Events are more fundamental than at first I might have assumed: +---------+ +---------+ | | | | | Kern |<----| Cons | | |---->| | | | | | +---------+ +---------+ ^ ^ | | -------/ /------| | +--------------------------+ | Event Handler | | | +--------------------------+ ^ | +--------------------------+ | Hardware | | | +--------------------------+ Events are pased up from the Hardware as Interrupts, are then repackaged and sent onto either the console or the Kernel itself. This would involve putting the event handler just *below* the kernel level. Most industrial folks would just want a basic graphics and keyboard service, so it would be best to have the system Event Handler to pass messages directly to the Kernel I/O routines... "User requests are what computers are for!" ~Walter, from Tron (1982) |
|
From: Gavin R. B. <ga...@ga...> - 2001-08-25 13:11:11
|
> Ismail PAZARBASI wrote:
>
> Gavin,
>
> Thanks for suggestions :) I have the whole scan codes list. I am
> now writing a class for kernel keyboard support. I only have few lines
> here, but lemme past:
no problem man. d:-)
> /*
> Kernel Keyboard Support
>
> Specs:
> + Initializes keyboard for any requested layout
> + Converts scan codes and ASCII codes each other
> + Handles key states (shift, alt, left, right, pressed, released)
>
> */
>
>
>
> class KKeyboard
> {
> public:
> KKeyboard();
> ~KKeyboard();
> int InitKeyboard(int nKbLayout); // This function initializes
> keyboard for the requested layout
> int GetKeyState(unsigned short uKeyReqs); // Gets key states such as
> shift state, ctrl, alt.. and which of them (l or r?)
> int PushIntoKBuffer(); // Puts last pressed key into keyboard buffer
> protected:
> virtual int ConvertCodes(int nCode, unsigned short uConvFlags); //
> Converts scan codes into ASCII
> };
Code rates 100% on Quality metric. (Not wishing to be petty, but could
you change the K to k in the class def.? I know it is non-standard and
all..)
>
>
>
> /*
>
> PS: I will add more functions. Please send everything about this. I
> am from Turkey,
> I am not sure I can come to meeting. But I will try.
>
> */
Dont panic. I have found a way we can make money. By reselling FreeBSD.
You can do it in your own country; just talk to your local business
advisor about packaging and marketing the CD.
Make the packaging attractive, get it on the shelves, and you will be
earning more than enough to make the trip. You can also make money by
selling the design rights of some of your earlier projects...(bit of a
sacrifice though, I wouldent wanna do it).
>
>
> Gavin, I want to learn more about invoking events when key pressed. An
> event can also read from 60h? I will implement the functions ASAP.
Events are interrupt based. Think of the Event as a wrapper object that
contains an IRQ, and turns it into a high-level message. (Voyager's
simple programming -> VGER's galaxy-wide crusade).
> Gavin, do not worry, we dont invoke interrupts. I masked int 09h in my
> assembly code. I am directly reading from port 60h, checking for last
> key scan code.
Good man.
As far as Events are concerned, I still need to research this. That
would be part of my Erasmus project, the study of which is now the core
of my final year degree dissertation. (Hopefully it wont be too
technical for my Polytechnic!)
I will be giving you some superficial pointers in the near future, but
dont worry about Events just yet. The keyboard driver would just get
entangled with the Eric superstructure. (A bit like someone plugging
Voyager's auxhiliary cable into VGER's memory banks...generally causes
confusion, and forces a rethink of the whole system)
All the best,
Gavin.
|
|
From: Ismail P. <paz...@my...> - 2001-08-25 12:54:18
|
Gavin,
Thanks for suggestions :) I have the whole scan codes list. I am now =
writing a class for kernel keyboard support. I only have few lines here, =
but lemme past:
/*
Kernel Keyboard Support
Specs:
+ Initializes keyboard for any requested layout
+ Converts scan codes and ASCII codes each other
+ Handles key states (shift, alt, left, right, pressed, released)
=20
*/
/*
Function Definitions & Return Values
------------------------------------
int InitKeyboard(int nKbLayout) : Initializes keyboard for any layout =
defined in this class.=20
Returns 0 if successful. Otherwise, returnes error code.
Error code can be translated into plain text by using
FormatMessage() function.
int GetKeyState(unsigned short uKeyReqs) : Returns key states. =
Parameter defines which keys
are requested and which states of these keys are
requested.
int PushIntoKBuffer() : Puts last pressed key into keyboard buffer. =
Returns 0 if success.
Otherwise, returns the error code. Error code can be translated =
into
plain text by FormatMessage() function.
int ConvertCodes(int nCode, unsigned short uConvFlags) : Converts =
nCode into given format by
uConvFlags. These flags will be enumerated soon.
*/
class KKeyboard
{
public:
KKeyboard();
~KKeyboard();
int InitKeyboard(int nKbLayout); // This function initializes keyboard =
for the requested layout
int GetKeyState(unsigned short uKeyReqs); // Gets key states such as =
shift state, ctrl, alt.. and which of them (l or r?)
int PushIntoKBuffer(); // Puts last pressed key into keyboard buffer
protected:
virtual int ConvertCodes(int nCode, unsigned short uConvFlags); // =
Converts scan codes into ASCII
};
/*=20
PS: I will add more functions. Please send everything about this. I am =
from Turkey,
I am not sure I can come to meeting. But I will try.
*/
Gavin, I want to learn more about invoking events when key pressed. An =
event can also read from 60h? I will implement the functions ASAP. =
Gavin, do not worry, we dont invoke interrupts. I masked int 09h in my =
assembly code. I am directly reading from port 60h, checking for last =
key scan code.
Regards.
|
|
From: Gavin R. B. <ga...@ga...> - 2001-08-25 12:14:39
|
Guys,
Remember us thinking is would be a great idea if we all got together at
some point?
Well, I have found the perfect package...
Apple Expo 2001
September 26-30
Porte de Versailles, Hall 4
Paris, France
Apple Developer Connection is hosting a booth
http://www.apple-expo.com/
NEW Steve Jobs to deliver keynote on Sept. 26 at 10:00 a.m.
Kenote venue: Porte Maillot, Palais des Congres
If you guys are on the ball, you can visit the website and get a FREE
entrance badge.
Think on it. d;-)
All the best,
Gavin.
|
|
From: Gavin R. B. <ga...@ga...> - 2001-08-25 11:24:24
|
Andy, Given the size of our kernel, the directory structure within eric/include/ is really a bit overcomplicated. Dont worry, it's a mistake I would have made.. d;-) Thanx, Gavin. |
|
From: Ismail P. <paz...@my...> - 2001-08-25 11:05:04
|
Andrew,
I debugged. I masked int 9h, the keyboard hw interrupt, and I ve got =
the scan codes now! I debugged in td (Turbo Debugger) and to the screen. =
( I have to use Microsoft Windows environment when I am at work). Now, I =
have to get ASCII codes of these scan codes. I can successfully get scan =
codes. It is very difficult to write a code to convert raw scan codes =
into ASCII, or I don't know the simple way. I wrote few of them: q, w, =
e, r and t. I can see the lowercase of these letters on the screen, =
others are not shown. I will now integrate this code into a C++ program, =
and match scancodes to ASCIIs. I think we can then simply integrate this =
code into kernel (i think it should be in kernel code) code.
Regards.
|
|
From: Gavin R. B. <ga...@ga...> - 2001-08-25 11:02:09
|
> Ismail PAZARBASI wrote:
>
> Hey,
>
> I am writing keyboard interface. I can now read from port 60h.
> When key pressed keyboard, keyboard microcontroller writes scancode
> into port 60h. But it also invokes int 9h, the keyboard hardware
> interrupt. The program I wrote in assembly can read from 60h. But it
> is not working :/ Because last key pressed is enter. I cannot test
> command interpreter :/
Ismail, it is probably better not to invoke interrupts as much as poss.
but you could be correct on this occasion. Note that: 1Ch <=> Enter
I can give you the full list of scan codes if you wish. <|;-)
Perhaps I might suggest that every keypress is registered as a
(MacOS-style) event? That is, when you press a key, or click a mouse,
the following data structure is updated:
Class kEvent
{
public:
que<kEvent*> eventQueue;
int eventCode;
int eventMessage;
long ticks;
point coords;
};
You can grab the contents of the keyboard buffer, convert them to
decimal and put them into eventMessage...you like it?
>
> Do you have a suggestion? I will read another key to terminate
> program. But, how can we make && debug this thing for our environment?
Debugging can be done with GDB (Gnu Debugger). I am almost sure that
there is a back end out there that can help you.
--
~--(Eric Developer)--~
http://eric.sourceforge.net
|
|
From: Andrew T. <zo...@i4...> - 2001-08-25 10:52:25
|
Ismail PAZARBASI wrote: > Hey, > > > > I am writing keyboard interface. I can now read from port 60h. When > key pressed keyboard, keyboard microcontroller writes scancode into port > 60h. But it also invokes int 9h, the keyboard hardware interrupt. The > program I wrote in assembly can read from 60h. But it is not working :/ > Because last key pressed is enter. I cannot test command interpreter :/ > > > > Do you have a suggestion? I will read another key to terminate > program. But, how can we make && debug this thing for our environment? If you read from port 60h there is the io class for port reading/writing. To debug we will need serial support or debug to the screen. > > > > PS: I am writing its Intel x86 binary code now. > > > > Regards. |
|
From: Ismail P. <paz...@my...> - 2001-08-25 10:40:17
|
Hey,
I am writing keyboard interface. I can now read from port 60h. When =
key pressed keyboard, keyboard microcontroller writes scancode into port =
60h. But it also invokes int 9h, the keyboard hardware interrupt. The =
program I wrote in assembly can read from 60h. But it is not working :/ =
Because last key pressed is enter. I cannot test command interpreter :/
Do you have a suggestion? I will read another key to terminate =
program. But, how can we make && debug this thing for our environment?
PS: I am writing its Intel x86 binary code now.
Regards.
|
|
From: Gavin R. B. <ga...@ga...> - 2001-08-25 07:51:18
|
Guys, Check this out.. Gavin. -- ~--(Eric Developer)--~ http://eric.sourceforge.net |
|
From: Ismail P. <paz...@my...> - 2001-08-25 07:17:44
|
Andy, Gavin,
I am trying to make this reading from keyboard thing. Since I do not =
know where can we read/write from/to memory, I mean address spaces, I am =
using stack now. So, we can read from keyboard into stack, and call it =
in reverse order :)) It seems so stupid but may be useful for some =
suffixes while executing programs. Anyway, if you send me please, I can =
write a code to put strings read from keyboard into that spaces.=20
As you know, I am now using BIOS's INT 16h. But I think we can =
directly read from keyboard via 60h port.=20
Regards.
|
|
From: Ismail P. <paz...@my...> - 2001-08-25 07:10:56
|
Hey Gavin,
My man:) Use FreeBSD! It suports FAT, FAT32, NTFS (Read Only), UFS, =
MFS, and even NFS :p Anyway, If you use FreeBSD 4.3 or above, you will =
get KDE 2.1 or KDE 2.2, which has KOffice software. It is working cool =
:) I started to use 4.3, after a long period of using 4.2. But I miss my =
4.2 though. It had more software on CD :) Anyway, I would like to =
clearify something about BSD, Linux, Microsoft and Sun....
Sun claims that Microsoft is making monopoly. Sun is another =
monopoly also. I installed Sun Solaris 8-4/1. It is 4 CDs. First, =
Installation, second Software CD1, third Software CD2, and fourth Sun =
Solaris Companion CD. First two CDs are adequate to use Solaris, =
actually. However, in first 3 CDs, I mean without Companion CD, there is =
not any C/C++ compiler. However, there are 3 Java directories + many =
Java Docs, SDKs, etc... When I try cc or gcc, it says "Language optional =
package not installed". I then installed Solaris with "Developer" =
option. It did not install C compiler again. I then figured out gcc is =
in Companion CD which is 550 MB. Sun claims Solaris is POSIX compatible =
Unix system. So where is C? Does not it mean Java monopoly? Forcing =
people using Java? All other free OSs are including at least cc and/or =
c++! There are also only 2 (Actually 1 because one is useless) desktop =
environments in Solaris: CDE, and OpenWindows. OpenWindows is useless. =
Anyway, I think Sun' s Java policy is all about Java monopoly. A useless =
language in 3 CDs, without any C compiler is so damned stupid.=20
Linux :) My nick is Linsux in EFNet IRC. I believe Linux really =
sucks. There was a security seminar in my school. People from Computer =
Assoc. came and shown us how to find & solve security holes. And =
according to their researches: (Security Degration from top to bottom)
1. NT
2. Linux
3. Windows 98 SE
4. Windows 98
5. SunOS (There was a great difference in the graph from Windows to Sun)
6. FreeBSD
7. SCO Unix
8. OpenBSD
I cannot remember where Windows 2000 was.
There were few more but these are enough. Linux people are like =
communists, saying "Why do not you use Linux? You should use it! It is =
better than the Microsoft monopoly! Windows sucks!"... If you ask me, I =
would use Windows rather than Linux. You can at least play games, and =
more secure :) They also claim something about BSD and variants. They =
claim "FreeBSD is a Linux clone"! Dammit! Linux is a BSD clone! There =
was BSD, when Linus Torvalds is just a sperm cell!
BSD people, we (I mean me and some of my friends), are snobs. We do =
best, we use best, we are the damned best :)) We support Linux stuff. =
And we never claim Microsoft' s monopoly. Because we believe Microsoft =
rocks the way, also. They are good coders. Windows is actually a perfect =
OS. But they have some mistakes about modeling.
Let' s talk about FreeBSD. First, as I said, FreeBSD is not =
application specific. You can run anything related to your target. There =
is only 1 vulnerability in FreeBSD 4.3, this is the first I have =
encountered last 2 years. It can make buffer overrun in telnetd =
sometimes. This is actually a serious problem. Because may let hackers =
to execute something with root permissions (usually root is running =
telnetd). 4.4 is better of course. I deleted my Solaris, and I am now =
using a FreeBSD + Windows 2000 Advanced Server. I am router of my home =
:)) We have a little network with 3 computers. And I intend to use Eric, =
next October. :D
Anyway, Gavin, use FreeBSD I think. You will love it! It is very =
organised. There are hundereds of software with FreeBSD.
And finally, I know it took too long again, I would like to tell you one =
of my stories about FreeBSD... We are trying to install FreeBSD 4.0 =
RELEASE to one of computers in my school. We encountered with a problem: =
BSD did not see our NIC. We were screwed, no clue about what we should =
do. We used #freebsdhelp in EFNet. Guys out there was unable to solve =
problem. So, we mailed this to FreeBSD. Few days later, a message came, =
saying: "Since this is a kernel problem, you are unable to fix it. We =
have also figured out FreeBSD 4.0 Release kernel is lack. You can =
download 4.1 ISO in few weeks. Thank you for your interest"... This was =
really cool! We then used 4.1, and it really rocks the way :) People out =
there are helping us... There are few more stories, but let them to the =
next mail :)
Thanks for listening :p
Regards.
|