You have a bad notebook,pompon wrote:my notebook ASUS F3Sseries
Do you know about Trusted Computing ?
You have a bad notebook,pompon wrote:my notebook ASUS F3Sseries
Well, as I have written, on PC I obtained "Hello world", but key pressing doesn't cause loop to repeat. On laptop anything doesn't work. Again it's: ASUS F3Sseries, Intel Core 2 Duo T5550. Which other parameters can be important? I'll give them if possible.Dex wrote:I would like to help, but first i need a problem, i tested your 2nd code on 8 differant PC's and it works on all of them.
Yes, the first thing i'm doing is "ljmp 0x07c0:main". It actually changes the result (comparing to the 2nd code version) but, as I have written, I get only black screen.JohnnyTheDon wrote:Did you use a long jump to make sure segments are set properly (as was suggested)? That would explain why it works on one computer but not another (bioses can load segments with whatever they want).
I haven't knew about that untill now (but googling a bit made me feel quite uncomfortable ). Is really problem so far that I can not boot from my own code ? Or is it a different suggestion?djmauretto wrote: You have a bad notebook,
Do you know about Trusted Computing ?
But using a floppy, on my test PC's it prints hello world then when you press a key it prints it againpompon wrote:Well, as I have written, on PC I obtained "Hello world", but key pressing doesn't cause loop to repeat. On laptop anything doesn't work. Again it's: ASUS F3Sseries, Intel Core 2 Duo T5550. Which other parameters can be important? I'll give them if possible.Dex wrote:I would like to help, but first i need a problem, i tested your 2nd code on 8 differant PC's and it works on all of them.
# nasm main.s -o main.binDex wrote: So there could be a problem writing it to the fob, how are you doing this ?.
Code: Select all
JMP Start
NOP
;======================
; Bios Parameter Block
;======================
OEM DB "Pompon "
Bytes_per_sector DW 512
Sectors_per_cluster DB 1
Reserved_sectors DW 1
Number_of_FATs DB 2
Root_entries DW 224
Total_sector_count DW 2880 ; 80*2*18
Media_descriptor DB 0F0H ; Floppy
Sectors_per_FAT DW 9
Sectors_per_track DW 18
Heads DW 2
Hidden_sectors DD 0
Total_sector_FAT32 DD 0
BIOS_drive DB 0
Unused DB 0
Boot_signature DB 29H
Volume_ID DD 0
Volume_label DB "Boot Sector"
File_system_type DB "FAT12 "
start:
; your boot code
berkus wrote:I believe Exadecimal Editors were banned on this plane of existence as well as Loathing point calculations.</ot>
BIOSes emulate USB drives in different ways:pompon wrote:YAHOOO!!! djmauretto, thank you very much! I added your code and it simply works . Now, can you explain me what it actually does and why was it necessary?
Ignore that postdjmauretto wrote:berkus wrote:I believe Exadecimal Editors were banned on this plane of existence as well as Loathing point calculations.</ot>
I don't understand ,please rephrase your statment
OK ,I'm happypompon wrote:YAHOOO!!! djmauretto, thank you very much! I added your code and it simply works . Now, can you explain me what it actually does and why was it necessary?
Code: Select all
mov ax,0bb00h ; TCG_StatusCheck
int 1ah
test eax,eax
jnz TCG_Not_Present
cmp ebx,41504354h ; 'TCPA' ?
jnz TCG_Not_Present
add cx,3030h ; CH = Major Version, CL,Minor Version
call Print_Version
Well, I probably don't understand what do you want me to do... I'm working under ubuntu and as I tried to "int 1ah" I've received segfault. shall I try to execute your code from the boot sector?djmauretto wrote: Can you try TCG (Trusted computing group) BIOS function
to verify availability ?
You can use this BIOS function:After that you can hash your boot code with function 7Code: Select all
mov ax,0bb00h ; TCG_StatusCheck int 1ah test eax,eax jnz TCG_Not_Present cmp ebx,41504354h ; 'TCPA' ? jnz TCG_Not_Present add cx,3030h ; CH = Major Version, CL,Minor Version call Print_Version
so it will be trusted
Yes from boot sector, note that Ubuntu terminal is 32bit not VM86,pompon wrote:Well, I probably don't understand what do you want me to do... I'm working under ubuntu and as I tried to "int 1ah" I've received segfault. shall I try to execute your code from the boot sector?
Finally, I have tested it with your code and it seems that I don't have TCG.djmauretto wrote: Can you try TCG (Trusted computing group) BIOS function
to verify availability ?
Thank you for testpompon wrote:Finally, I have tested it with your code and it seems that I don't have TCG.
Thank you once again,
Pompon