The online racing simulator
Hi im not a programmer, Im interested in all this insim stuff, i dont understand what its for, Could some 1 explain what insim is and the benefits of using it, Sorry if i sound stupid, just interested .

thanks john
Insim, OutSim and Outguage are methods of communicating with LFS to import and extract specific information.

Insim lets you get a very wide variety of information about what the client or server is doin, depending on where its connecting to (an InSim client which connects to a server gets a lot more information).

OutSim is designed to things like motion simulators and gives acceleration, heading, etc. vectors for your vehicle (client side only).

Outgauge gives you the gauges of your vehicle (client side only).

The advantage of using these "protocols" is that you can extract information that would otherwise be rather tricky to get ahold of.
Quote from MonkOnHotTinRoof :Hardly anyone uses assembly language today. Even lower layers of OS and drivers are usually written in C.

It's used for debugging more than you might imagine. A good C programmer will know at least some ASM for this reason.

Quote from MonkOnHotTinRoof :Assembly is great to learn architecture of CPU and for fun. It was my second language, right after Spectrum Basic . Tho it might be overkill for you. Usually microcontrollers can be programmed with stripped-down variants of C.

ASM is still used on a number of home appliances, such as heating timers, etc. where there is a ridiculously small amount of memory available.
Quote from jjones :Hi im not a programmer, Im interested in all this insim stuff, i dont understand what its for, Could some 1 explain what insim is and the benefits of using it, Sorry if i sound stupid, just interested .

thanks john

Well basically InSim allows you to write a stand-alone program which can communicate with LFS and internally it works much in the same way as normal multiplayer works.

LFS sends out network packets which contain various information about what's happening in the game, your program then picks these packets up and processes the information it needs from them. In turn your program can also send packets back to LFS, instructing it to carry out certain tasks, or requesting for information to be sent, or sent in a specific way.

The benefits of using it are quite clear really, but probably examples would be good. For instance the CCRT license system uses InSim, LFSLapper is present on practically every server and displays information about current lap times to players on the server, LFSPitboard allows you to have a little customised pitboard show every time you cross the start line, LFSStats tracks statistical information about races and then allows you to view and export that data.

The possibilities are endless...
Quote from the_angry_angel :Insim, OutSim and Outguage are methods of communicating with LFS to import and extract specific information.

Insim lets you get a very wide variety of information about what the client or server is doin, depending on where its connecting to (InSim connects to the server gets a lot more information).

OutSim is designed to things like motion simulators and gives acceleration, heading, etc. vectors for your vehicle (client side only).

Outgauge gives you the gauges of your vehicle (client side only).

The advantage of using these "protocols" is that you can extract information that would otherwise be rather tricky to get ahold of.

cheers i find that outsim is interesting and motion sims, the build i saw on the threads looks very impressive indeed, As for the rest its way over my head. But thanks for explaining.

Its amazing what u find if u look about, the lfs manual covers it all,
Quote :ive currently been trying to learn assembly and machine code. I want to get a cheap microcontroller just to play around with. What is assembly useful for, anyway? I want to figure out how to write my own DOS drivers.

There's not really a huge impetus to learn ASM any more, it used to be very useful for writing performance critical programs, or embedding some ASM in a performance critical part of your code. For instance a lot of games used ASM in the most performance critical part of their loops, as you can see if you download the open source Quake III source code from id, which is written in C with some ASM inserted at key locations.

Nowadays though compliers and virtual machines are so clever and optimised that often its actually possible to harm performance by adding ASM if you don't know what you're doing. Plus of course modern PCs are so blindingly fast that performance has started to take 2nd precedence to ease of use and reuseability.

As others say, if you want to write device drivers you could do it with C.
-
(wheel4hummer) DELETED by wheel4hummer
Quote from DarkTimes :There's not really a huge impetus to learn ASM any more, it used to be very useful for writing performance critical programs, or embedding some ASM in a performance critical part of your code. For instance a lot of games used ASM in the most performance critical part of their loops, as you can see if you download the open source Quake III source code from id, which is written in C with some ASM inserted at key locations.

Just because it isn't useful doesn't mean anything. I am a recreational programmer. I program in assembly because I find it fun.
Yes, but it was a response to the question of what assembly can be useful for. I didn't say ASM is useless or that no one should use it. But in my opinion the uses for ASM have declined with the advent of much more sophisticated programming environments and stupidly fast computers. Really we have reached a point where ASM has very few practical applications in general programming. Although almost all of us program in our spare time because we do find it fun. No matter what language you use, so long as you find it fun, that's all that matters.
Quote from DarkTimes :Yes, but it was a response to the question of what assembly can be useful for. I didn't say ASM is useless or that no one should use it. But in my opinion the uses for ASM have declined with the advent of much more sophisticated programming environments and stupidly fast computers. Really we have reached a point where ASM has very few practical applications in general programming. Although almost all of us program in our spare time because we do find it fun. No matter what language you use, so long as you find it fun, that's all that matters.

ASM is only used to enhance the simplicity and the volocity of particuliar part of a program. Like in "real time" programming, when you need to put deadline you'll may be requiered to speed up some part of an application and sometimes there is no other way to do but by deassembly your program and modify it by hand. I had to do like that with one of my program. Also needed to program a kernel.
>> Edit: was already said, i didn't understanded.

And learning ASM may be quiet usefull to fully understand the world of programation.

One thing that we must not forget is that every programation laguage goes from High level programation language to ASM to binary (if i'm not wrong, offcourse ).
I'm digging myself into a hole, I know, but if you have to resort to ASM to optimise your code these days, then there is probably a whole lot wrong with your code that a few lines of assembly are unlikely to fix.
More of a sysadmin-type moan, but I need to find some way of humilitating myself and I figure its probably aimed at the right sort of people. For some reason I decided that it would be a good idea to do an apt-get update on one of my personal boxes - whilst fairly intoxicated. Needless to say I wasn't paying attention and the upgrade system broke exim (the email server I run).

I swear nothing has, or will in future, sober me up quicker than watching it break my carefully crafted system as it upgrades to the new version and I say "no" to not change the conf files to the new version. Unfortunately once its on, unless you want to roll back and then upgrade again (which is equally mad sometimes) you have to fix the files yourself - or fire up a VS and get the files converted there instead.

I spent a good portion of the day working on having a hang over tomorrow/this morning as well
that'll teach you not to make backups of vital stuff
Quote from Victor :that'll teach you not to make backups of vital stuff

I do make backups But only of data and conf files on my personal machines, unfortunately Perhaps I shall revise this.
I've switched to running all my servers as vmware images (will try Xen on my new server). Aside from being able to run multiple servers on one machine, I can easily back up each server and even bring it up on another machine, should the host machine die on me. It's made my life so much easier.
-
(MonkOnHotTinRoof) DELETED by MonkOnHotTinRoof
Unfortunately it's not the entirety of the .NET framework, only some base libraries that make up part of it (or at least that's my interpretation)
Well from what I've read it will initially be :

System
System.IO
System.Collections
System.Configuration
System.Threading
System.Net
System.Security
System.Runtime
System.Text
System.Web
System.Windows.Forms
System.Data
System.Xml
System.Windows

With more to come in the months ahead, such as WCF, Workflow, and LINQ. It's obviously not complete, but it's a fair amount to get started with.
That's pretty much all of version 2.0.

Quote from DarkTimes :System
System.IO
System.Collections
System.Configuration
System.Threading
System.Net
System.Security
System.Runtime
System.Text
System.Web
System.Windows.Forms
System.Data
System.Xml
System.Windows

WPF/WCF/WWF(when is the WorldWildLifeFoundation going to sue?!) is 3.0 so it makes since it'll come out later. LINQ is still beta along with all the other 3.5 stuff so I would not expect it to come out til much later.

Quote :
With more to come in the months ahead, such as WCF, Workflow, and LINQ. It's obviously not complete, but it's a fair amount to get started with.

Nonetheless, will be interesting to see the code as written (like you can with Java... which in some cases is horrific) instead of through IL interpreters like Reflector. Especially when dealing with ASP.NET. Basic .NET code is great, Windows Forms is pretty solid, but a lot of the design choices, etc. made for ASP.NET are just assinine.
I have to admit I've only ever seen that screen on a handful of occasions, and even then just hitting Rebuild Solution would fix it.
#96 - col
Quote from DarkTimes :I'm digging myself into a hole, I know, but if you have to resort to ASM to optimise your code these days, then there is probably a whole lot wrong with your code that a few lines of assembly are unlikely to fix.

I think you have a _very_ narrow view of modern programming.

Sure, if you have to resort to ASM optimization for some web scripting thing or for a simple console tool, then there might be something wrong with your design, but there are so many areas in which there are never enough resources.

What if you are processing a large data set using an algorithm that is NP-complete (and there aren't any more efficient alternative algorithms), then you need all the help you can get, and a "who needs ASM, modern cpus are well fast" attitude just isn't going to get the job done !

What about embedded platforms? there are millions of consumer products out there that all run some sort of software. The more efficient the software is, the cheaper the product can be to manufacture... You gonna code it in java and send a memo to the boss demanding 10 times more ram and a much bigger processor ?

What about handheld devices... gamboy advance/DS are good examples. Not only is the cpu comparatively tiny, and the memory restrictions extreme, you have to factor battery usage into your software design ! the larger percentage of the time the cpu is idle, the longer the battery will last !

It is going to get more and more difficult to hand code in assembly as we move towards truly concurrent architectures (everything gets more difficult as that happens), but assembly will still be valuable to optimize small code sections.

Anyway, I think it's amazing to hear folks who develop 'application software' for PCs or websites generalizing their experience to all of programming
Yup, usually caused by developers doing tasks that are too long. And yes there are some issues (especially in VS2005 that weren't in VS2003 but seem to be taken care of in VS2008 betas) with inheritance and controls moving, etc.

Quote from BurnOut69 :Ehm...windows forms is FAR from solid, visual inheritance is a royal pain in the ass - ever heard of the white screen of death?

http://blogs.msdn.com/rprabhu/archive/2005/08/11/450332.aspx

very possible and easy - just use mci to see what is tha car in last whenever a LAP is sent. The spectate that car. Dunno if you can do that via insim, but i guess you can. Good n easy mod - you try to code it - its a good starting point!
Yup, very simple to implement. You should be able to do it relatively simply if you're willing to spend a good while learning how to program in one of the languages that already has a library (presuming you don't already know how to program).
edit: irrelevant.

The Off Topic Programming Thread!
(309 posts, started )
FGED GREDG RDFGDR GSFDG