Jump to content

How to install Windows from USB- WinSetupFromUSB with GUI


Recommended Posts

3 hours ago, wincedd said:

I made a bootable win10 with winsetupfromusb but the computer doesn't recognize the USB at bootup

Very likely your computer is one of those that (for some strange reasons) has issues with MBR style devices if the firmware is set to UEFI only (maybe a DELL?) or that (again for strange reasons) doesn't "like" the grub4dos bootcode (Insyde BIOS?).

In any case for Windows 10 you would be probably better served by either Rufus:

https://rufus.ie/

or

WINNTSETUP (but if you choose this latter there is an initial learning curve to create the PE in which to run it):

 

https://msfn.org/board/topic/149612-winntsetup-v3931/

If you want to solve the problem with winsetupfromusb, you may want to try (if you are using a UEFI firmware) to enable the CSM (Comparibility Support Module, in practice BIOS, if you have this option) and/or try to change boot order (nowadays on most computer there are two ways to boot from USB, onechanging the boot order in the firmware and one changing this setting on-the-fly at boot time prssing a hotkey - like F8 or F11/F12 and sometimes oine of the two methods works and the other one doesn't).

jaclaz

Link to comment
Share on other sites

  • 8 months later...

Please, can anybody spend a bit of time to help me with the WinSetupFromUSB operation?

Apparently, it seems to be a very very nice combined utility.

I tried it several times to get a bootable flash drive with XP PE, but couldn't succeed, though.

Could anybody explain, at what stage and how should I get at least 2 or more files to boot a flash drive with WinXP on it?

Say, my BIOS waits for NTLDR and NTDETECT.COM and probably some others.

But I can't see WinSetupFromUSB provides them all, alas.

WinSetupFromUSB consists of 3 parts as seen from its interface.

Which one of them should provide the booting files and at which stage?

I also prepared my flash drive as indicated in advance: Formatting it FAT32 or NTFS, activating beforehand.

Although, I still cannot see NTLDR and NTDETECT.COM and probably some others.

Or should they be borrowed from anywhere else?

Please, help. THX.     

 

Edited by cuneiform
Link to comment
Share on other sites

WinsetupfromUSB is basically meant to setup winnt from USB, NOT boot an XP from USB  and though it can be used to install an XP on a USB it is a dual stage procedure, see FAQ #7, point #4 here:

http://www.winsetupfromusb.com/faq/

You can however use it to boot a PE (either a PE 1.x, i.e. based on XP, like a BartPE, or a later version), compare with FAQ #1 here:

http://www.winsetupfromusb.com/faq/

It is not clear what you mean by a "XP PE",  a PE 1.x would normally use SETUPLDR.BIN (and not NTLDR) :unsure:

jaclaz

 

 

 

 

Link to comment
Share on other sites

  • 3 months later...

My old BIOS has only USB-ZIP and USB-FDD and support USB2.0. It only boot from USB when my UFD is formatted with 2 partitions. The first one had to be FAT16 32MB hidden, and the second FAT32.

I create successfully and boot those partitions either through BOOTICE using the U+V2 button, with dummy.sys driver and with WinSetupFromUSB v1.9 FBinstTool. I try to install XP from USB to the internal IDE disk which I know is recognized by WinXP SP3 official ISO disk, so I select the 1st option and check the "Don't check for and install grub4dos MBR" and "Do not copy and use DPMS" at the advanced options, as I already know my UDF can start the grldr and I don't need Driver Pack Mass Storage. I also try both grub4dos 0.4.5c and 0.4.6a versions.

When grub4dos script try to load the plop boot manager it hangs.

The same issue which hangs plop on this old BIOS happen on another new PC, alas that new PC can successfully install XP without any double partition tricks using the Rufus 2.18 way faster as it uses USB2.0 speeds.

I modify the script to just load the plop and from plop's menu I select USB1.1 mode 2 which is work through out the whole process on both PC but it is very very very sloooooow.

To try to solve this issue I give init --usb command which give me drive 81 for USB on old BIOS but then I can't access files through fdd device with ls. Is it possible shifthd.bat or other script has some bug when USB has two partitions (one is hidden)?

I also try to boot that old BIOS PC with UFD straight through MS-DOS (himem.sys in config.sys and smartdrv.exe) and then start winnt.exe from the UFD drive, which DOS gave it letter C to begin with XP setup. The 1st step of the winnt.exe XP setup process goes very fast like USB2.0 speed, but it suddenly reboot after it process a bunch of files.

I think that either I don't need plop but I don't know how to modify the grub4dos script to begin with usb --init command so whole setup can start from there, or I need to load some DOS USB driver on old BIOS in case of MS-DOS setup. Although by using DOS setup I end with an ugly installation :( in drive D.

Please advise :unsure:

Link to comment
Share on other sites

That BIOS you describe is very "queer".

Technically a (real) ZIP drive is a partitioned device with a single partition entry in 4th partition slot (with a given CHS geometry of n/64/32 but that should be later ignored by the NT based OS, as long as PBR iis on sector 32).

You might want to try this approach:

http://reboot.pro/topic/12436-usbzipls120-booting-with-minimalist-mbr-code-and-grldr/

and verify that the UFD is bootable that way.

I mean, it is possible that your hidden FAT16+FAT32 current formatting works for booting but creates other issues.

About installing starting from DOS, there is a (now old. and if not deprecated at least not recommended anymore) approach that keeps Windows drive letter C:, BUT the install is first done on FAT32 and later the volume is converted to NTFS:

https://web.archive.org/web/20100329105739/http://www.911cd.net/forums//index.php?showtopic=16713

Back to the specific WinntsetupfromUSB:

1) which version are you currently using?
2) have you tried one of the earliest versions (they were "simpler") with the same results? < if not try the WinSetupFromUSB 1.0

jaclaz

 

 

Link to comment
Share on other sites

That BIOS you describe is very "queer".

6 hours ago, jaclaz said:

That BIOS you describe is very "queer".

M/B is AOPEN AK86-L

6 hours ago, jaclaz said:
  1. Technically a (real) ZIP drive is a partitioned device with a single partition entry in 4th partition slot (with a given CHS geometry of n/64/32 but that should be later ignored by the NT based OS, as long as PBR iis on sector 32).

Grub4dos (before usb --init) sees 4 FDD partitions (fd0,0) (fd0,1) etc.

Quote

That thread is huge although I'll try it.

1):
I had wrote in my first post I use version 1.9

2):
I just try the 1.0 version. At fbinst I reformat the UFD by using chs + zip + force options then I drag-drop grldr 0.4.6a. Test it to see if it boot to grub4dos and is OK. Then I continue with "Add to USB disk" and the two advanced options mention earlier.

The results are exactly the same. The script tries to shift the drive and fail (hang) on plop boot manager. Even Ctrl-Alt-Del does not respond. Do you think it is appropriate to try even earlier WinSetupFromUSB versions and/or try earlier grub4dos?

If I boot from UFD straight to DOS (no grub4dos) and then start ghost.exe from A: it fails, but the same ghost executable runs fine from internal C: in pure DOS.
If I boot straight from the internal C: disk to DOS then DOS doesn't see the UFD (eg. A:) although UFD has FAT32 partitions and its there. Maybe that issue is because UFD has partitions?

Also the spfdisk.exe at start it states that UFD has overlapped partitions. Alas, spfdisk does not have the ability to switch to floppy mode and check partitions there.

Link to comment
Share on other sites

On 4/17/2020 at 2:18 PM, jaclaz said:

At best all I can get are a bunch of registers and by hitting any key the screen displays several more pages of them. Then it hangs. What I have to do with those DX,BP,AX etc. registers?

I try to follow that approach but I'm stuck in mud. I barely understand 30% of what they say. That is not step-by-step walk-though. He jump to conclusions without to present us how he got there. What commands gave to debug (I assume that he got boot from the internal hard disk to DOS then run debug.exe). How I can get the values for LLLL and SSSS?

Link to comment
Share on other sites

Ok, forget the miniMBR, it is likely way too complex for now.

The try with version 1.0 was just an attempt costing nothing.

I am perplexed by the two partitions (and the specific way you have them) in some cases having two partitions (one hidden) is needed to have the USB stick recognized as hd device, but normally the first partition (hd0,0) is the "good" one and a "dummy" one cylinder partition (not formatted and with a hidden ID *like* 21)  is added (RMPREPUSB uses this approach), but this is to somehow "force" the BIOS to recognize the stick as hard disk device, if with your setup it is still recognized as floppy I fon't see the utility of the double partition.

Anyway, if you can boot from grub4dos, however the UFD is setup, that is fine.

It is entirely possible that the shiftd grub4dos batch has an hiccup, but you should be able to manually remap the device(s).

Can you post your current winsetup.lst (or whatever .lst you are executing)?

Boot to the grub4dos prompt.

Run:

geometry (hd0)

geometry (fd0)

If needed repeat with (hd1)

and post what you see.

then run 

usb --init

and repeat the geometry commands (they should have the same output), only post differences - if any.

Basically, once you are booted, and if everything is seen by grub4dos, you can manually run *something like*:

map (fd0) (hd1)

map --hook

and you should be in the "normal" situation where the internal hard disk is (hd0) and the UFD is (hd1), i.e. what the shiftd batch qould do if the UFD was from the beginning mapped to (hd0) and the internal disk as (hd1).

jaclaz

 

Link to comment
Share on other sites

My BIOS doesn't have USB-HDD option and I can't able to to boot with USB-FDD option. Only USB-ZIP is working.

18 hours ago, jaclaz said:

geometry (hd0)

drive 0x80(LBA): C/H/S 38913/255/63, sector count / size 625137345 / 512
partition num: 0, active, NTFS, 0x07
partition num: 1, NTFS, 0x07
partition num: 2, NTFS, 0x07
partition num: 3, FAT32, 0x0C

18 hours ago, jaclaz said:

geometry (fd0)

When I use BOOTICE's UltraISO v2+ using boot code USB-ZIP+ v2, "hide boot part" to hidden with boot partition size 32MB FAT16 Grub4Dos (grldr), "Data partition" FAT32 with size the rest of space I get:

drive 0x00(CHS): C/H/S 30020/64/63 sector count / size 121037824/512
partition num: 0, active, FAT16, 0x06
partition num: 3, unknown, 0x0C

partition num: 3 is actually a FAT32, I don't know why grub4dos say it is unknown. In fact if I switch partitions 0 with 3 using BOOTICE, or Unhide the hidden partition, the grub4dos then report:
num: 0, unknown, 0x0C
num: 3, active, FAT16, 0x06
So, when the FAT16 partition is hidden only the partition ID is changing from 0x06 (unhide) to 0x16 (hidden) but the 2nd FAT32 partition is always reported as unknown where it is clearly formatted as FAT32.

Then I format it with BOOTICE U.V2+ hide boot part to none, boot partition size the whole space as FAT32 (grldr), set PBR to grub4dos, copy the grldr to root and get:
drive 0x00(CHS) 30036/255/63, sector count / size 121103360/512
partition num: 3, active, FAT32, 0x0C
Filesystem type is FAT32, using whole disk.
usb --init
Found 1 USB devices. Device Num: 0x81;
geometry (fd0) : Error 25 disk read error
geometry (hd1) :
drive 0x81(LBA) C/H/S=7539/255/63 sector count / size 121103616/512
partition num: 3, active, FAT32, 0x0C

Then reformat with U V2+ hide boot part: hidden, play with Set accessible and unhide a bit then I get for (fd0):
drive 0x00(CHS) 17/255/63, sector count / size 65536/512
partition num: 0, FAT32, 0x0C
partition num: 3, active, FAT16, 0x16
Filesystem type is FAT16, using whole disk.

This time I get the right type for the 2nd partition and I don't know why :huh: and don't know what that "using whole disk" means.

using usb --init
Found 1 USB devices. Device Num: 0x81;
geometry (fd0) : Error 25 disk read error

geometry (hd1) :
drive 0x81(LBA) C/H/S=7539/255/63
sector count / size 121103616/512
partition num: 0, FAT32, 0x0C
partition num: 3, active, FAT16, 0x16

On all cases the shifthd.bat hangs when it gets to the plop boot manager.
Another issue just before it goes to execute the plop is when it is say "The highlighted menu entry will auto start after 10 seconds" but there isn't any menu entry so probably shifthd.bat has a bug.

When I give usb --init and then root (hd1) it hangs.

The winsetup.lst is the one from WinSetupFromUSB. I try to insert some usb --init, map (fd0) (hd1), map --hook etc. here and there but it hangs or goes to file not found.

My latest attempt with only one partition indicates that WinSetupFromUSB has issues which are not depend to my initial setup which had two partitions.

Link to comment
Share on other sites

Ok, this one is seemingly fine:

Quote

drive 0x00(CHS) 30036/255/63, sector count / size 121103360/512
partition num: 3, active, FAT32, 0x0C
Filesystem type is FAT32, using whole disk.

together with the "internal" hard disk:

Quote

drive 0x80(LBA): C/H/S 38913/255/63, sector count / size 625137345 / 512
partition num: 0, active, NTFS, 0x07
partition num: 1, NTFS, 0x07
partition num: 2, NTFS, 0x07
partition num: 3, FAT32, 0x0C

Now try:

map (fd0) (hd1)

map --hook

usb --init

Though it seems to me like even without the manual remapping the mapping is correct (the internal disk remains first disk aka (hd0) and the stick is second disk aka (hd1), that is fine.

It may be needed :unsure: to also run:

map --floppies=0

map --harddrives=2

before the "map --hook"

You must NOT run the shiftd batch, that one is intended - in most common cases - to shift disks and if the device is seen as floppy it calls Plop.

You cannot - generally speaking - root to (hd1), you can only establish root on a recognized volume. that would be in your case root (hd1,3).

(normally the UFD is seen as boot hard disk, i.e . it becomes (hd0) and the internal hard disk is shifted to (hd1) the shiftd bat is intended to remap the dirves so that the internal becomes (hd0) - thus indirectly  allowing the setup to install to the C:\ drive - and UFD is shifted back to (hd1)) 

Unless I am mistaken, the winsetup.lst is created when the tool is run (in the archive it is almost empty) so I need to see the one you are actually using.

Maybe simpler, replace the shiftd.bat (make a copy) with this:

!BAT

echo This grub4dos batch does nothing

pause

jaclaz

 

  

Edited by jaclaz
Link to comment
Share on other sites

19 hours ago, jaclaz said:

Maybe simpler, replace the shiftd.bat (make a copy) with this:

Didn't try because the main script winsetup.lst needs RDSK variable. I set RDSK=1 in shfthd.bat as I already know that by usb --init one more device (the hd1) appears to grub4dos. The whole setup procedure from start to finish after my modifications to the shifthd.bat runs fine on the newer PC but on old BIOS (AOPEN AK86-L) it freezes when windows setup loads kernel debugger dll. I also try several e820cycles values within winsetup.lst and some grub4dos versions with fbinst without any success.:(

I try all and some of your commands and I get hd2 (0x82) when execute usb --init, so I didn't proceed further.

My modifications (mostly comment out to shifthd.bat) as I know that UFD is detected as fdd and later using usb --init became hd1 and the rest are the originals from winsetupfromusb 1.9. Is there any known issue with windows setup and/or WinSetupFromUSB when the setup freeze at kernel debugger dll?

shifthd.bat original menu.lst original shifthd.bat original winsetup.lst

Edited by seahorser
Link to comment
Share on other sites

Yep, that is why I needed the winsetup.lst, it needs to be commented excluding the RDSK and other checks or, much better when experimenting NOT executed and replaced by manual commands (if they work they can be later reassembled in new, dedicated entries in winsetup.lst).

Namely in the winsetup.lst the :

root (hd%RDSK%,0)
is fixed to first partition entry of %RDSK% while you only have a fourth partition entry on the UFD.

The whole point is that WinsetupfromUSB provides an "automagical" way that works in most cases (but not on this specific motherboard) and we need to manually find a procedure that works and only later modify the .lst accordingly.

I need to know the output of

geometry (fd0)
geometry (hd0)
geometry (hd1)
geometry (hd2)

after you have run:

map (fd0) (hd1)
map --floppies=0
map --harddrives=2
map --hook
usb --init

Hopefully you should have only (hd0) as the internal disk and the UFD as (hd1) but even if  you have the (fd0) and the (hd2) it is fine, as long as the internal disk is actually (hd0) and the UFD is the (hd1), the other devices are not used in the following.

DO NOT run shiftd bat.

then run:

find --set-root /WINSETUP/XPpSP3.ISO
root

you should have as output: 

(hd1,3)

then - still on command line - this is corresponding to the "title First part of Windows XP Professional SP3 setup from partition 0", executing these on command line you should see for most commands some feedback :

ls /WINSETUP/XPpSP3.ISO
map --mem /WINSETUP/XPpSP3.ISO (0xff)
map --rehook
root (0xff)
root
chainloader /I386/SETUPLDR.BIN
boot

Then (if everything above goes well) - this is corresponding to "title Second part of Windows XP Professional SP3 setup/Boot first internal disk":

chainloader (hd0)+1
rootnoverify (hd0)
boot

jaclaz

Link to comment
Share on other sites

On 4/21/2020 at 10:20 AM, jaclaz said:

is fixed to first partition entry of %RDSK% while you only have a fourth partition entry on the UFD.

I don't know at which UFD format scheme you refer to. My current UFD format is made from fbinst from within WinSetupFromUSB 1.9 using as format options chs zip force and import the grldr to the primary data area and also copied to the root of the UFD. I boot straight to grub4dos without any menus or scripts. Find command give me a list of: (ud) (fd0) (fd0,0) (hd0,0) (hd0,1) (hd0,2) (hd0,3) , map ( and TAB give me fd0 hd0 rd ud.

geometry (fd0):
drive 0x00(CHS): C/H/S=370/255/63, Sector Count/Size=5944050/512
  partition num: 0, active, Filesystem type is fat32, partition type 0x0C
Filesystem type is fb, using whole disk

geometry (hd0):
drive 0x80(LBA): C/H/S=38913/255/63, Sector count/Size 625137345/512
partition num: 0, active, NTFS, 0x07
partition num: 1, NTFS, 0x07
partition num: 2, NTFS, 0x07
partition num: 3, FAT32, 0x0C

geometry (hd1):
Error 21 selected disk does not exist

geometry (hd2):
Error 21 selected disk does not exist

map (fd0) (hd1):
floppies_orig=1, harddrives_orig=1, floppies_curr=1, harddrives_curr=2

map --floppies=0
map --harddrives=2
map --hook
(no output)

usb --init:
Found 1 USB devices. Device Num: 0x82;

{ Now, form that point on (because of usb --init), geometry (fd0) reports the same numbers as above (
drive 0x00(CHS): C/H/S=370/255/63, Sector Count/Size=5944050/512) Error 25 Disk read error.
geometry (hd1) now reports
Error 21 selected disk does not exist }

geometry (hd0): the same as above drive 0x80(LBA) etc.

geometry (hd2):
drive 0x82(LBA) C/H/S=7539/255/63 sector count / size 121101568/512
partition num: 0, active, fat32, 0x0C

find --set-root /WINSETUP/XPpSP3.ISO:
(hd2,0)

root:
(hd2,0) Filesystem type is fat32, partition type 0x0C

ls /WINSETUP/XPpSP3.ISO:
XPpSP3.ISO

map --mem /WINSETUP/XPpSP3.ISO (0xff)
map --rehook
root (0xff):
Filesystem type is iso9660, using whole disk
Volume Name is: "XPpSP3".

root:
(0xff) Filesystem type is iso9660, using whole disk
Volume Name is: "XPpSP3".

chainloader /I386/SETUPLDR.BIN:
Will boot NTLDR from drive=0xff, partition=0xff(hidden sectors=0x0)

boot:
The system encountered an I/O error
accessing multi(0)disk(0)rdisk(1)partition(1)
Setup cannot continue. Press any key to exit.

That error indicate I have to edit txtsetup.sif inside XPpSP3.ISO and change the rdisk(1) to rdisk(2). Then setup goes well until it is freeze on Mylex EXR2000 SCSI atapter. Again I remove all Mylex EXR2000 and dac2w2k entries from txtsetup.sif as I don't have any SCSI adapter. This time setup freeze at Kernel Security Provider.

Edited by seahorser
Link to comment
Share on other sites

Wait a minute.

I was talking of this situation:

On 4/20/2020 at 8:54 AM, seahorser said:

Then I format it with BOOTICE U.V2+ hide boot part to none, boot partition size the whole space as FAT32 (grldr), set PBR to grub4dos, copy the grldr to root and get:
drive 0x00(CHS) 30036/255/63, sector count / size 121103360/512
partition num: 3, active, FAT32, 0x0C
Filesystem type is FAT32, using whole disk.
usb --init
Found 1 USB devices. Device Num: 0x81;
geometry (fd0) : Error 25 disk read error
geometry (hd1) :
drive 0x81(LBA) C/H/S=7539/255/63 sector count / size 121103616/512
partition num: 3, active, FAT32, 0x0C

That is seemingly partitoned (partially) as a ZIP drive:
Only one entry in the 4th slot, covering the whole device.

This one is another device (and partitoned "normally" with the partition in first slot):

11 hours ago, seahorser said:

I don't know at which UFD format scheme you refer to. My current UFD format is made from fbinst from within WinSetupFromUSB 1.9 using as format options chs zip force and import the grldr to the primary data area and also copied to the root of the UFD. I boot straight to grub4dos without any menus or scripts. Find command give me a list of: (ud) (fd0) (fd0,0) (hd0,0) (hd0,1) (hd0,2) (hd0,3) , map ( and TAB give me fd0 hd0 rd ud.

geometry (fd0):
drive 0x00(CHS): C/H/S=370/255/63, Sector Count/Size=5944050/512
  partition num: 0, active, Filesystem type is fat32, partition type 0x0C
Filesystem type is fb, using whole disk

As long as it boots from it, it is fine, but it is not the same thing we were talking about before and it doesn't look as a ZIP at all.

Anyway, this is OK:
 

Quote

 

geometry (fd0):
drive 0x00(CHS): C/H/S=370/255/63, Sector Count/Size=5944050/512
  partition num: 0, active, Filesystem type is fat32, partition type 0x0C
Filesystem type is fb, using whole disk

geometry (hd0):
drive 0x80(LBA): C/H/S=38913/255/63, Sector count/Size 625137345/512
partition num: 0, active, NTFS, 0x07
partition num: 1, NTFS, 0x07
partition num: 2, NTFS, 0x07
partition num: 3, FAT32, 0x0C

 

Now, when you run (WITHOUT mapping (fd0) to (hd1)) 

usb --init

 

it should produce (hd1) (or drive 0x81) and go on as before, it should do the same as before but with (hd1):
 

Quote

geometry (hd0): the same as above drive 0x80(LBA) etc.

geometry (hd1):
drive 0x81(LBA) C/H/S=7539/255/63 sector count / size 121101568/512
partition num: 0, active, fat32, 0x0C

find --set-root /WINSETUP/XPpSP3.ISO:
(hd1,0)

root:
(hd1,0) Filesystem type is fat32, partition type 0x0C

ls /WINSETUP/XPpSP3.ISO:
XPpSP3.ISO

map --mem /WINSETUP/XPpSP3.ISO (0xff)
map --rehook
root (0xff):
Filesystem type is iso9660, using whole disk
Volume Name is: "XPpSP3".

root:
(0xff) Filesystem type is iso9660, using whole disk
Volume Name is: "XPpSP3".

chainloader /I386/SETUPLDR.BIN:
Will boot NTLDR from drive=0xff, partition=0xff(hidden sectors=0x0)

boot:

Only this time, the multi(0)disk(0)rdisk(1)partition(1) should be correct.

From then on, the issues seem to be in the actual Windows XP setup :dubbio:

jaclaz

 

 

 

Link to comment
Share on other sites

On second thought.

You could set aside WinsetupfromUSB and try this approach:

A good winvblock image was provided by Ilko:

The difference is that (normally) the USB (boot disk) becomes (hd0) and shifts the internal disk to (hd1), hence the need in menu.lt to exchange/remap them,

Since in your case the usb --init should result already as (hd1) there is no need for that.

So it should become:

title 1 Start Windows XP setup
usb --init
pause
find --set-root --devices=h /winvblock.ima
root
pause
map /winvblock.ima (fd0)
map /winvblock.ima (fd1)
map /Inst/XPpSP3.ISO (0xff)
map --hook
chainloader (0xff)

title 2 Continue Windows XP setup
usb --init
pause
find --set-root --devices=h /winvblock.ima
root
pause
map /winvblock.ima (fd0)
map /winvblock.ima (fd1)
map /Inst/XPpSP3.ISO (0xff)
map --hook
chainloader (hd0)+1

jaclaz

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...