filmov
tv
Printing Global Variables (then Changing Boot Order) | UEFI Dev (in C)
Показать описание
Improving error and format string printing, printing all efi global variables, then adding an option to print the Boot* global variables and change BootOrder & BootNext, to set what loads first on the next boot.
I will try to edit more out and have shorter videos in the future, as these take a bit too long to make, and watch.
Notes:
- A better way to print the minimum field width and padding with blanks or 0s might be keeping a running count of characters/digits printed, both in printf() and called functions like print_number() via input parm(s). Then after printing out the whole string/number/etc. it could loop while num_printed is less than the min_field_width and print blanks or 0s there.
The padding character could be a variable set to space or zero and used in that loop.
This might be covered as a change at the start of the next video, or the one after.
Links:
UEFI Programming playlist:
Git Repo:
Repo state at the start of this video:
cd uefi-dev
git checkout 3011ea7347916c753644c73b72b075639564964b
Repo state at the end of this video:
git checkout e732ace03354a2e703bf9eed4c8c3d4d600e5af5
Contact:
Questions about setup/software/etc.?
If you feel like throwing money my way:
Next video:
- Adding an option to write this whole disk image to the start of another drive, so that you can reboot without needing a usb stick anymore!
Misc. editing notes:
- Trying out Davinci Resolve Studio 19 Beta for this one, with auto subtitle generation, and Nvidia AV1 encoding. Bitrate should be a bit higher from going down to CQP 12 when recording ffmpeg va-api av1.
The subtitles will be exported and added to these videos going forward, so hopefully subtitles are a little better/more accurate, at least for english, compared to youtube's autogenerated ones.
Resolve generates a transcription at 20-30x speed, which doesn't take very long to make even for multihour timelines. Or can use in/out points to limit what timeline parts are generated.
- I will work on better de-essing in OBS filters and hardware setup/gain levels.
- Removed the color correction filter in OBS for the webcam, and am messing with the camera's manual settings instead.
For daytime recording, I have F1.8, ISO 2000, 1/60 shutter speed, and manual white balance of 3100K. Can adjust that if it's really bright out.
For nighttime, I'm not sure yet, but am testing with white balance 2900K. Probably need to up the ISO a bit or do some gamma/brightness adjustment, as it is a bit dark.
I can't get super accurate colors for low light with a lamp, or really for daytime as well, but it's fairly close.
We'll see if this video turns out any better for my talking head which doesn't need to be there to begin with :)
- Also got a new (well, 2023) laptop solely for Windows testing/Gaming/Video Editing. Unless or until I switch to a Linux distro with nvidia drivers and try gpu passthrough for VMs, and/or get windows vst3 audio plugins working on Linux via wine.
For gaming and editing it should be at least as performant as my desktop, but a bit louder and hotter. But it's also portable!
I can work on videos now without rebooting or dual booting, or can test on windows AND linux at the same time, or have a video playing while I game, or do anything that needs a decent gpu when away from home.
My older laptops' integrated graphics aren't terrible, but they perform very poorly for any gpu intensive work, other than maybe intel quicksync for encoding/decoding.
So far in resolve, playback is smoother after adding effects and while cutting clips, but we'll see if that holds up for 4 hour timelines and many hundreds of clips.
Resolve seems to like nvidia & cuda better than AMD, and probably likes as much vram and normal ram as it can get.
0:00:00 intro, improve menu up/down arrows
0:05:00 better error printing
0:26:33 somewhat better printf
1:02:21 add global text rows/cols variables
1:09:28 add a couple helper functions to get a number from user
1:17:56 add menu option to print EFI global variables
1:42:50 add menu option to print boot variable info
2:53:56 change BootOrder & BootNext variables from user input
3:11:32 next up & outro
Music credits:
Licensed under Creative Commons: By Attribution 4.0 License
#uefidev #printf #bootvars
I will try to edit more out and have shorter videos in the future, as these take a bit too long to make, and watch.
Notes:
- A better way to print the minimum field width and padding with blanks or 0s might be keeping a running count of characters/digits printed, both in printf() and called functions like print_number() via input parm(s). Then after printing out the whole string/number/etc. it could loop while num_printed is less than the min_field_width and print blanks or 0s there.
The padding character could be a variable set to space or zero and used in that loop.
This might be covered as a change at the start of the next video, or the one after.
Links:
UEFI Programming playlist:
Git Repo:
Repo state at the start of this video:
cd uefi-dev
git checkout 3011ea7347916c753644c73b72b075639564964b
Repo state at the end of this video:
git checkout e732ace03354a2e703bf9eed4c8c3d4d600e5af5
Contact:
Questions about setup/software/etc.?
If you feel like throwing money my way:
Next video:
- Adding an option to write this whole disk image to the start of another drive, so that you can reboot without needing a usb stick anymore!
Misc. editing notes:
- Trying out Davinci Resolve Studio 19 Beta for this one, with auto subtitle generation, and Nvidia AV1 encoding. Bitrate should be a bit higher from going down to CQP 12 when recording ffmpeg va-api av1.
The subtitles will be exported and added to these videos going forward, so hopefully subtitles are a little better/more accurate, at least for english, compared to youtube's autogenerated ones.
Resolve generates a transcription at 20-30x speed, which doesn't take very long to make even for multihour timelines. Or can use in/out points to limit what timeline parts are generated.
- I will work on better de-essing in OBS filters and hardware setup/gain levels.
- Removed the color correction filter in OBS for the webcam, and am messing with the camera's manual settings instead.
For daytime recording, I have F1.8, ISO 2000, 1/60 shutter speed, and manual white balance of 3100K. Can adjust that if it's really bright out.
For nighttime, I'm not sure yet, but am testing with white balance 2900K. Probably need to up the ISO a bit or do some gamma/brightness adjustment, as it is a bit dark.
I can't get super accurate colors for low light with a lamp, or really for daytime as well, but it's fairly close.
We'll see if this video turns out any better for my talking head which doesn't need to be there to begin with :)
- Also got a new (well, 2023) laptop solely for Windows testing/Gaming/Video Editing. Unless or until I switch to a Linux distro with nvidia drivers and try gpu passthrough for VMs, and/or get windows vst3 audio plugins working on Linux via wine.
For gaming and editing it should be at least as performant as my desktop, but a bit louder and hotter. But it's also portable!
I can work on videos now without rebooting or dual booting, or can test on windows AND linux at the same time, or have a video playing while I game, or do anything that needs a decent gpu when away from home.
My older laptops' integrated graphics aren't terrible, but they perform very poorly for any gpu intensive work, other than maybe intel quicksync for encoding/decoding.
So far in resolve, playback is smoother after adding effects and while cutting clips, but we'll see if that holds up for 4 hour timelines and many hundreds of clips.
Resolve seems to like nvidia & cuda better than AMD, and probably likes as much vram and normal ram as it can get.
0:00:00 intro, improve menu up/down arrows
0:05:00 better error printing
0:26:33 somewhat better printf
1:02:21 add global text rows/cols variables
1:09:28 add a couple helper functions to get a number from user
1:17:56 add menu option to print EFI global variables
1:42:50 add menu option to print boot variable info
2:53:56 change BootOrder & BootNext variables from user input
3:11:32 next up & outro
Music credits:
Licensed under Creative Commons: By Attribution 4.0 License
#uefidev #printf #bootvars
Комментарии