|
|
|||||||
Hey Guys, I know this isn't the correct BBS for this, but I thought you guys might know the answer. My company heavily uses Dell computers. I know that Dell stores the Service Tag (same as Serial #) somewhere in the BIOS ROM. I know this because you can see it in the BIOS setup screen and the diagnostic disk can access it. I would like to create a script that calls a simple Assembler program to inventory the serial #'s to the computer name. I can write simple assembly program but I was wondering how I might find the memory address to read from? Thanks, |
||||||||
|
|
|||||||
Actually CJ posted some info on this here . I started working on doing the same thing with the Dells and found that they don't keep it in the same place between the desktops and the laptops, even different models seems to be in various places. I'll track down the code that I have so far and post it. OK here it is. It is by no means complete, and I would like to change it to use an external data file for each of the manufacturers and set up a sort of 'default' options where it parses the dump for the information. Hopefully I'll have some time soon to work on it some more. Enjoy code: ------------------
[This message has been edited by Paul_Berquam (edited 15 January 2001).] |
||||||||
|
|
|||||||
Thanks CJ! This looks like it will work for what I need. We only use about 5 or 6 different models so I should be able to modify it for each. I will play with it and see what happens. Mark |
||||||||
|
|
|||||||
If you find any different offsets for the different model please post them. No sense in reinventing the wheel. Glad it worked for you. ------------------ "He was a good little monkey and always very curious..." |
||||||||
|
|
|||||||
I will. I also would like to sort of automate it to maybe autodetect Mfg and model. I will need to look at the dumps from several computers to see if I can do that or not though. |
||||||||
|
|
|||||||
I just ran this script on my GX1 and it was not able to find the information. My GX100 gave me this. Dell Computer Corporation Sysinfo = C:\Dell\sysinfo.dat I have the following Dell models avaliable to me here. G1 Poweredge 1300 Also, all dell computers are wiped clean, and reformatted using a ghost image that was built from the ground up (almost all dell support software is not installed, this includes the c:\dell directory) I would be glad to assist in any way that i could, for this project (but i have no idea on how to work debug ) Bryce |
||||||||
|
|
|||||||
I have done a BIOS dump (F000:0 FFFF) on two different systems so far. One was a GXi and the other a GX1. The GX1 had the following things of interest to me: F000:B5DC B5E8 = "Optiplex GX1" -Could be useful for autodetecting model. The GXi had: F000:C192 C1A7 = "Optiplex GXi" =Could be useful for autodetecting model. Unfortunately I could not find the service tag anywhere in the dump from the GXi. I don't know if this means it is not stored in the ROM of GXi's or if I was just not looking in the correct ranges. Debug is a utility built into DOS (and NT) that is useful for running short Assembly segments, but can also be used to dump data from memory. To use it just type debug at the command prompt and you will be given a new prompt. Type ? for a list of commands. If you type "d F000:0 FFFF" you will be given a memory dump from F000:0000 to F000:FFFF. (This may take a while, debug is slow). Mark |
||||||||
|
|
|||||||
Very cool script Paul, Need to move $CRLF=chr(13)+chr(10) from where it is to under GLOBALs. It is not defined in non-Dell section otherwise and you get a DEBUG.SCR without the CRLFs - hangs the DOS box. Bryce, (and others) Debug is used here to dump the information in the BIOS ROM about the computer. The DEBUG.SCR file is a set of keystrokes that we < to DEBUG.EXE and then capture the result. D is for Dump and it displays memory at a starting address. The range is the amount of mem to dump. The default range is 0x180. Q is quit. So the script runs DEBUG.EXE, Dumps a small piece of memory and then Quits. The output file is in the format of Segment:offset/\/\un0ln0/\un1ln1/\...-../\un15ln15/\/\/\c0c1c2....c15CRLF where X is the absolute address of the byte. eg: 0ADF:0100 06 F8 96 01 74 09 50 56-9A E0 01 C5 10 5E 58 FF ....t.PV.....^X. at address 0adf:0100 is byte 0x06 which looks like "." (it doesn't really, but that is what DEBUG.EXE shows for non-displayable characters) as an aside... 0adf:0100 translates to 0adf0 + 100 = 0aef0 in physical memory. This is the 44,784th btye (prob on the first sim) I love assembly! cj |
||||||||
|
|
|||||||
I've got a neat little DOS program called smbios.exe that pumps out bios info to an INI type file... Works great on HP's - not too sure 'bout DELL's - I'll email it to anyone that's interested... Shawn. |
||||||||
|
|
|||||||
Sent it my way please! Bryce |
||||||||
|
|
|||||||
I would be interested in checking that out as well. Wouldn't hurt to see if it would work on the Dells. Thanks ------------------ "He was a good little monkey and always very curious..." |
||||||||
|
|
|||||||
Shawn, i got the program and it seems to be working just fine with my dell gx1, and gx100 Nice little program! Bryce |
||||||||
|
|
|||||||
I second that one. Very cool. What did you write it in? ------------------ "He was a good little monkey and always very curious..." |
||||||||
|
|
|||||||
Guys... Unfortunately - I can't take the credit for this one... it was developed by one of our external consultants (or he lifted it from somewhere else) not too sure of the history here... But yes - I do own the source code. It was developed using Borland C++ ... glad you like it... Shawn. |
||||||||
|
|
|||||||
Shawn I wonder if your smbios.exe is the same as found on this site: http://www.ibm.com/products/surepath/other/smbios.html Erik [This message has been edited by kholm (edited 15 January 2001).] |
||||||||
|
|
|||||||
Erik: hmmm - I just download the source code for IBM's SMBIOS - it's definitely not the same one I have (but maybe it was based on an earlier version of this utility)... But the brief look I did have seems to suggest that this is one cool tool - there's TONS of command line switches (ours has none) - definitely worth a look-see ... We use our version of smbios during the discovery portion of our automated NT installs - we create one CD that will support the entire line of HP Vectra workstations... In a week or two - we have to do the same thing with an IBM line of computers - will definitely check this program out at that time... Thanks... Shawn. |
||||||||
|
|
|||||||
could you shoot it to me also?? I have to SP6a every PC we have but not the dell laptops... |
||||||||
|
|
|||||||
here is the debug range for compaq deskpros -d f000:a336 a35a |
||||||||
|
|
|||||||
this is the code I have used for a while now that allows me to get bios info from a system during a dos lan logon . I can then load the image that is correct for the system. I am using 2 programs vpdump.exe and smbios2.exe both supplied to me from IBM (we have 4000 ibm systems) the command line switches in smbios2.exe allow for geting more info from the bios if needed ( on some systems I can get the network card that is installed.) I am useing kixtart version that works in dos so this code could be done better if you could do it from windows I'm not sure if the code will post correctly as I don't know what the commands are to to separate it from the text. ;***********************************************************8 $offset=0 if $offset=1 ;found serial no if $offset=14 ;found model no ;sleep 20 Endif IF $serial = "" OR $model = "" endif ;************* : |
||||||||
|
|
|||||||
brown, et al... yeah - that smbios2 from IBM seems to work pretty well.. I just ran it over here on some HP's like this... smbios2 /g 01 spits out the bios in pieces... neat... Shawn. |
||||||||
|
|
|||||||
Here is what I have just come up with, I'm not certain of how much value this is, but here it is... Big thanks to Paul, who contributed greatly to this (so it can't be all my fault... ) BTW, Not all sections have been fleshed out, but you'll get the idea. code: |
||||||||
|
|
|||||||
Ok, I finally had a chance to work on this again. Anyways I have tried all of the utilities that were referenced earlier and most of them will work on later Dell's. However I could not get any of them to work on the GXi series. I have also dumped the entire bios section and extended bios section from memory (thanks to the memory map available on dells site). The serial number was not found anywhere in any of the dumps. This leads me to believe that you cannot get the serial number from older Dell's. Although if you run the BIOS setup it will report the serial number. I wonder if it is stored somewhere in un-addressable memory. I may just write the scripts without support for older Dell's. Thanks, [This message has been edited by mm0015 (edited 17 January 2001).] |
||||||||
|
|
|||||||
Hi, I'm currently looking for dumping the below Dellinfo into the registy. I'm able to pipe this information into a textfile, but i don't see to manage to read from the textfile the info to dump it into the registry? I was wondering if somebody has any idea's on doing this? TIA Fre |
||||||||
|
|
|||||||
FRE, What are you using to pull the info to a text file? |
||||||||
|
|
|||||||
Hi,
Fre |