Gambit-C & Basic-256 work, FreeSSHd almost.

Here you can discuss ReactOS related topics.

Moderator: Moderator Team

Post Reply
Aeneas
Posts: 505
Joined: Sat Oct 10, 2009 10:09 pm

Gambit-C & Basic-256 work, FreeSSHd almost.

Post by Aeneas »

SUMMARY:

Apparently, Gambit-C (MinGW) and BASIC-256 work nicely. They can be found here:

http://dynamo.iro.umontreal.ca/~gambit/ ... /Main_Page

http://basic256.org/index_en

I encountered an interesting error with WinSSHd:
[007] WinSSHD 4.28: Error registering for WinSSHD registry key change notification: RegNotifyChangeKeyValue() failed: Windows error 1: ERROR_INVALID_FUNCTION - Incorrect function.

Sorry, I am not acquainted with your exact "program reporting scheme" and I do not have the time to concern myself with them right now, thus this is why all "reporting details" are in this posting. If some person in charge is interested, the above two programs can be possibly added to your compatibility database.



DETAILS (only if you care):

I have just tried out the virtualbox image. I just opted for normal startup, always.

Putty cannot create a Desktop icon immediately - desktop icons ARE being seen, but only if you say to refresh. This seems to a harmless but pervasive issue often to be seen in ReactOS.

I wanted to try then Kpym SSH server: installation starts out fine, until it breaks off, being unable to do something with some file (I guess it cannot find it, but I could not read as quickly). It does not work - it cannot find an (unspecified) file. However, you DO get into its setup utility. So far this is garbage, but hey, it is cool nonetheless "for sincerely trying"!

I installed Firefox 2 from the applications manager. Firefox 2 needs sometimes refreshing, as it does not re-establish the page correctly when switching between tabs.

Next I tried FreeSSHd. It installs correctly. The text on the setup of tunneling is partly hidden - it says "Allow remote port" and then some upper-letter fragments of "forwarding".

Putty crashed on login - it did correctly display a dialogue for the username and the password, but when supplied, putty's windows just disappeared. - Interestingly, my login attempts seem to annihilate the user whom I created for SSH login FreeSSHd, which I expected to stay unaffected!

Finally, when I used a putty command line supplying the password with -pw and asking for more details with -v, I got at least an error message:

Using username "MYUSERNAME".
Could not switch to child desktop: ERROR_BUSY - The requested resource is in use.

I got this also when I tried to create and use the user "Administrator".

Also, the command prompt (cmd.exe) seemed at some point to start to hang: It did not display with the arrow keys the previous commands, but it did show them if I started to type anything (like, hit spacebar (as a workaround)).

Then Firefox started to not recognise the mouse on the scrollbar, but did apparently recognise it elsewhere - it did highlight the tab names and did minimise correctly. - Minimising and maximising again and then hitting enter in the address field to refresh the page helped.

I then tried Silverfrost Fortran Personal Edition. While installing Silverfrost Fortran Personal Edition, it showed a message that environment variables should be modified - I clicked Yes, and it blue-screened. - Upon restart, there was no more the complete .exe for it, rather it showed as an unfinished download. I shall try this one out some other time.

Next I tried WinSSHD - it actually installed. I told it to open its "Management Console" when suggested, and lo and behold - error messages! Perchance this may be useful for developers:

It said about FreeSSHd (though this might not be an error, as I did NOT want FreeSSHd to run as a service):

The description for Event ID ( 0 ) in Source ( FreeSSHDService ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. the following information is part of the event: Service started

Then followed two messages recorded in a time distance of 1 second about WinSSHD, both named Event 4097 - the older one read:

[007] WinSSHD 4.28: Error registering for WinSSHD registry key change notification: RegNotifyChangeKeyValue() failed: Windows error 1: ERROR_INVALID_FUNCTION - Incorrect function.

The newer one read:

[004] WinSSHD 4.28: Failed to bind listening socket to interface 0.0.0.0:22: operation WSAEnumProtocols - first call failed with the following error: Windows error 10107: WSASYSCALLFAILURE - A system call that should never fail has failed.

That last thing might be actually interesting, apparently it is some kind of "real Windows test".

Next I removed WinSSHD and turned my attention to OpenSSH for Windows 3.8p1-1. It fails to install the "server" part, because it is not a "true NT or Windows 2000" system. A, t'hell with OpenSSH!

So, I re-downloaded again FTN 95 (the Fortran compiler). Its installation wizard again starts correctly, but I noticed something strange: When in front of the Explorer, if the Explorer is not minimised, the Explorer "shines through" with its directory listing into the installation wizard. This is definitely a bug, though well survivable - by minimising the Explorer. This time I did NOT allow it to modify environment variables - lo and behold, it installed!

I fired up the Plato IDE - and it works, but it has the problem that the main menu is not shown, just some little triangles. It IS usable, however: if you click on one of these triangles and move carefully around, the different menus appear. - However, when I tried to compile the obligatory hello-world-application, it failed. What it SHOULD do is to display an advertisement for the personal edition and then show "Hello, World". Playing around with it a bit more, I tried to do single-stepping. It did not work, talking about some access violation and showing... an EMPTY tip of the day. - Whatever is used here for displaying things, it apparently does not work. - I re-installed, it DID work with modifying its own registry values (I allowed it this second time), but still, it fails running a program. - It complains about the lack of saflibc.dll.

OK, then on to QB64, a Basic compiler (similar idea to FreeBASIC, which you apparently already have). I picked version 0.936, because it is just 22 MB, while the next (newest) version is a whopping 80 MB. - Notepad could not open the readme.txt, however, wordpad could. - OOOK. QB64 hangs on compilation.

Allright - then how about BASIC-256? - Lo and behold, it WORKS! PERFECTLY! By the by, it is GPL.

I also tried a MinGW build of gcc (esp. gfortran), but this did not even install. Another attempt to reach an older version resulted in a bluescreen while browsing. Actually, at some point Firefox became intolerably crashy so I just dropped this effort.

On toooo... wellll... SCHEME!! An extremely lovely language, and the Gambit-C Windows-MinGW-installer WORKED!! At least the Scheme interpreter works NICELY for simple tests.

Now what? Hamachi! - OK, the idea was nuts, and it failed: The installer did start, but installation basically ended with the installer being "forcibly minimised" (yet not closed!) and if I start the program I only get a high grey panel without any text on it.

General impression:

It looks really nice, the progress is noticeable. In the past, e.g. FreeSSHd would not even install. Now it ALMOST runs correctly. And this general "ALMOST" is what I believe applies to the entire release. - That being said, I think you DO have a chance to produce a working system for until April 2014... You will need to hurry up a bit, but what you have done so far is truly impressive.
Haos
Test Team
Posts: 2954
Joined: Thu Mar 22, 2007 5:42 am
Contact:

Re: Gambit-C & Basic-256 work, FreeSSHd almost.

Post by Haos »

Its tad useless without a debug log. What better, you should open a cmd window and within type following:

Code: Select all

set DEBUGCHANNEL=+reg
Then you should use the same cmd window to run your app. Finally, please open a bug report, describe the problem BRIEFLY (like, on ros [revision] ran app x version y, when did or pressed z, app crashed/displayed error) and attach debug log.

All you need to do.
Aeneas
Posts: 505
Joined: Sat Oct 10, 2009 10:09 pm

Re: Gambit-C & Basic-256 work, FreeSSHd almost.

Post by Aeneas »

Well, I might, but if I remember correctly, Z98 was at some point mentioning that there is some part of the system missing that would be needed for a server. (I was having more hope for the Fortran compilers.) Well, one never gives up hope...
vicmarcal
Test Team
Posts: 2733
Joined: Mon Jul 07, 2008 12:35 pm

Re: Gambit-C & Basic-256 work, FreeSSHd almost.

Post by vicmarcal »

In this case the error points,probably,to the registry.This is not a Server related problem.So the Log could be really useful.This is the reason Haos asked you to set a debugchannel to registry, so the log will show extra printings in that particular area.Without it we can't help.
zefklop
Developer
Posts: 114
Joined: Sat Feb 11, 2006 8:47 pm

Re: Gambit-C & Basic-256 work, FreeSSHd almost.

Post by zefklop »

A quick look at the code shows that the underlying kernel support is unimplemented.

I wonder how STATUS_NOT_IMPLEMENTED can end up to ERROR_INVALID_FUNCTION, though. The magic of NTSTATUS <> Win32 error mapping ;-)
Aeneas
Posts: 505
Joined: Sat Oct 10, 2009 10:09 pm

Re: Gambit-C & Basic-256 work, FreeSSHd almost.

Post by Aeneas »

Allright, guys, I shall try to get a "debug log", following the advice above by Haos.

HOWEVER, IN THE MEANTIME:

THE SILVERFROST FTN95 FORTRAN COMPILER WORKS!!

It does not work from the Plato GUI, but on the command line - it DOES: if you have, say, myfile.f90, you just need to say (in the Silverfrost directory): ftn95 myfile /link. It shows the banner for the edition "strictly for personal uses", then, after some clicking and hitting Enter from my side, it DID run my code.

Now to the bad news - g95 (a free Fortran 90 compiler) does not work, which is a shame. The MinGW build does not compile anything at all - it never gives out an object file; the Cygwin version complains that stdout and stderr cannot be differentiated; it produces an object file, but cannot link it. If I try to link that "Cygwin object file" with the "MinGW linker", it produces an error message.
Aeneas
Posts: 505
Joined: Sat Oct 10, 2009 10:09 pm

Re: Gambit-C & Basic-256 work, FreeSSHd almost.

Post by Aeneas »

Allright, I tried. But your "how to get debug output"-guide is an embarassing MESS. I say that sincerely and with the highest appreciation for this project.

First of all, you have a page here:

http://www.reactos.org/wiki/Debugging

and a page here:

http://www.reactos.org/wiki/VirtualBox

covering "kind of" the same topic. It is upon the user to decide, eh? And then there is nothing thought to the end! If you use this, but you may use that, blablabla, but never telling you how to GET something from SOMEWHERE in a coherent manner. I mean, come on, guys, _I_ do not care about the debug log, YOU do! Tell the user how to actually GET it for you! Is it a .txt file? WHERE is that .txt file, in each method? In what order are the methods to be tried? Are they cumulative or alternative?

Of course, you may say that a technically interested person may decipher it at some point. But then you should rather do the debug output yourselves. I, for one, am not, by profession, a "computer person" - I have an interest in ReactOS and OSes in general, that's all. So if you want to get anything from laymen, explain it in their terms! If you wish testing from laymen, it must be simple and straightforward for them; the same way as your attorney will never ask you, "What paragraph is your problem?", but simply, "What happened?". Look how Microsoft does it: "We basically saw that the application XY crashed, do you want to tell us about it?" - and you just say yes! Why is there no mechanism, "We saw something crashed, can you file a bug report under [clickable link] attaching the text file 'debuglog.txt' which we save now on your ReactOS desktop?"

I mean, you can surely say, I am all stupid and everything is so great as it is and blablabla, and take pride in "knowing how to do a ReactOS debug log", but hey, then you will be the only ones who will produce such!

----------

After this general criticism, here is what I did:

I tried the suggestion, which Haos kindly posted, but it did absolutely nothing.

Redirecting the serial output of VirtualBox to a pipe did not work either (I use on Linux): I cannot access the pipe created.

So I tried something else - I said I wish to create a Host Pipe of COM1 to /dev/ttyS0 (Linux' first serial port). I then connected to this port by cu -l ttyS0. - However, I saw absolutely nothing.

So I am not sure whether I did everything correctly, nor do I know what may have gone wrong.
vicmarcal
Test Team
Posts: 2733
Joined: Mon Jul 07, 2008 12:35 pm

Re: Gambit-C & Basic-256 work, FreeSSHd almost.

Post by vicmarcal »

I think it's not such difficult, but next time I will prepare a videotutorial...We are in Youtube Era, and a video worth thousand words.
Let's see how difficult is obtaining a Debuglog following our Wiki:
Ok, your first link was correct:
Let's check HOW to read it correctly. This is a Reference not a Book, that means that you must jump to the proper section that suits your needs(in an Encyclopaedia you just read the Article you are looking for, right?). Use the Index:
2.1 Debugging through text messages
2.1.1 Serial Port
2.1.1.1 Virtual machines
Clicking in 2.1.1.1 it drives you to:
**Virtual machines****
How to handle serial output from virtual machines can be found on the VM specific debugging pages:


QEMU
VirtualBox
VMware
You want VirtualBox debugging so let's click on VirtualBox:
It sends you to http://www.reactos.org/wiki/VirtualBox# ... bug_output

So your second link (the http://www.reactos.org/wiki/VirtualBox ) was correct too. It's called "redundancy" so users who thinks it must be under Virtualbox section will find it too, directly.

There is an Index too which describes Windows HOST methods and Linux HOST methods.
(Note: HOST is the OS where you are running VirtualBOX in)
In this case you are a Linux user, you can follow any of the followings:
1.3 Redirect to console (Linux host)
1.3.1 Using socat
1.3.2 Using minicom
1.4 Redirect to file (Linux host)
You can use console(2 different methods) or file(1 single method).
Done!
Aeneas
Posts: 505
Joined: Sat Oct 10, 2009 10:09 pm

Re: Gambit-C & Basic-256 work, FreeSSHd almost.

Post by Aeneas »

OK, I am trying the Linux socat method, that seems to work! I shall file a bug report.
Aeneas
Posts: 505
Joined: Sat Oct 10, 2009 10:09 pm

Re: Gambit-C & Basic-256 work, FreeSSHd almost.

Post by Aeneas »

My bug reports regarding the SSH servers are:

6896, 6897

BTW, I do not know whether it is of relevance, but one of the files said at some point:

WARNING: MmUnlockPageableImageSection at ntoskrnl\mm\ARM3\drvmgmt.c:39 is UNIMPLEMENTED!

I am on x86 - so I am not certain whether "ARM3" is normal to be mentioned.
Z98
Release Engineer
Posts: 3379
Joined: Tue May 02, 2006 8:16 pm
Contact:

Re: Gambit-C & Basic-256 work, FreeSSHd almost.

Post by Z98 »

ARM3 doesn't stand for the ARM architecture, it stands for Another Rewrite of the Memory Manager Module, or something like that.
Aeneas
Posts: 505
Joined: Sat Oct 10, 2009 10:09 pm

Re: Gambit-C & Basic-256 work, FreeSSHd almost.

Post by Aeneas »

Thank you for clarifying!
Post Reply

Who is online

Users browsing this forum: Ahrefs [Bot], nealkenna82 and 42 guests