I've just finished a code that will allow you to change to widescreen (16:9 and 16:10) resolutions as well as most 4:3 Standard resolutions.

First off, add this somewhere near the beginning of your code:

Code:
////////wide should be set to:
////////0 - Standard
////////1 - 16:9 Widescreen
////////2 - 16:10 Widescreen
function set_resolution(res_,wide_,_depth,_window)
{
	var new_ratio;
	var x_;
	var y_;
	var view_aspect;
	if (res_ == 0) { video_set(0,0,_depth, _window); return; }
	if (wide_ == 0 || _window == 2)
	{
		if (res_ == 1)
		{
			x_ = 640;
			y_ = 480;
		}
		if (res_ == 2)
		{
			x_ = 800;
			y_ = 600;
		}
		if (res_ == 3)
		{
			x_ = 1024;
			y_ = 768;
		}
		if (res_ == 4)
		{
			x_ = 1280;
			y_ = 960;
		}
		if (res_ == 5)
		{
			x_ = 1280;
			y_ = 1024;
		}
		if (res_ == 6)
		{
			x_ = 1400;
			y_ = 1050;
		}
		if (res_ == 7)
		{
			x_ = 1600;
			y_ = 1200;
		}
	}
	else
	{
		if (wide_ == 1)
		{
			if (res_ == 1)
			{
				x_ = 848;
				y_ = 480;
			}
			if (res_ == 2)
			{
				x_ = 960;
				y_ = 600;
			}
			if (res_ == 3)
			{
				x_ = 1088;
				y_ = 612;
			}
			if (res_ == 4)
			{
				x_ = 1280;
				y_ = 720;
			}
			if (res_ == 5)
			{
				x_ = 1360;
				y_ = 768;
			}
			if (res_ == 6)
			{
				x_ = 1600;
				y_ = 900;
			}
			if (res_ == 7)
			{
				x_ = 1920;
				y_ = 1080;
			}
		}
		if (wide_ == 2)
		{
			if (res_ == 1)
			{
				x_ = 640;
				y_ = 400;
			}
			if (res_ == 2)
			{
				x_ = 960;
				y_ = 600;
			}
			if (res_ == 3)
			{
				x_ = 1280;
				y_ = 768;
			}
			if (res_ == 4)
			{
				x_ = 1280;
				y_ = 800;
			}
			if (res_ == 5)
			{
				x_ = 1600;
				y_ = 1024;
			}
			if (res_ == 6)
			{
				x_ = 1680;
				y_ = 1050;
			}
			if (res_ == 7)
			{
				x_ = 1920;
				y_ = 1200;
			}
		}
	}
	video_set(x_, y_, _depth, _window);
	wait(1);
	new_ratio = x_ / y_;
	view_aspect = new_ratio / (4/3);
	camera.aspect = view_aspect;
}


Explanation of use:

set_resolution (res_number, widescreen, video_depth, window);

Res_Number: This area sets the resolution, similar to video_switch, the resolutions are as follows:

0 - No change in resolution

If widescreen set to 0 (4:3 Standard):
1 - 640x480
2 - 800x600
3 - 1024x768
4 - 1280x960
5 - 1280x1024
6 - 1400x1050
7 - 1600x1200

If widescreen set to 1 (16:9 Widescreen):
1 - 848x480
2 - 960x600
3 - 1088x612
4 - 1280x720
5 - 1360x768
6 - 1600x900
7 - 1920x1080

If widescreen set to 2 (16:10 Widescreen):
1 - 640x400
2 - 960x600
3 - 1280x768
4 - 1280x800
5 - 1600x1024
6 - 1680x1050
7 - 1920x1200

Widescreen: When this is set it will allow you to change the res_number to use widescreen resolutions rather than 4:3.

Use:
0 - Use 4:3 Standard aspect ratio
1 - Use 16:9 Widescreen aspect ratio
2 - Use 16:10 Widescreen aspect ratio

Video_Depth : set the video depth:
0 - No change
16 - 16-bit mode
32 - 32-bit mode

Window:
0 - Don't change window mode
1 - Set to fullscreen mode
2 - Set to windowed mode

The code is intended to kind of "replace" the video_switch function and should be used in the same way. Hopefully this is a good enough explanation. If it's possible could this become a sticky? I think this would be really helpful.
Special thanks to Grafton, Inestical, and FlorianP for submitting resolutions.
This is based on Xarthor's aspect ratio fix, so thanks to him as well.


- aka Manslayer101