diff --git a/cicm_web/Models/Gpu.cs b/cicm_web/Models/Gpu.cs
index 8fd83eb2..d5124414 100644
--- a/cicm_web/Models/Gpu.cs
+++ b/cicm_web/Models/Gpu.cs
@@ -54,7 +54,7 @@ namespace cicm_web.Models
: new Gpu
{
Name = dbItem.Name,
- Company = Company.GetItem(dbItem.Company.Id),
+ Company = dbItem.Company == null ? null : Company.GetItem(dbItem.Company.Id),
DieSize = dbItem.DieSize,
Introduced = dbItem.Introduced,
ModelCode = dbItem.ModelCode,
@@ -78,7 +78,7 @@ namespace cicm_web.Models
items.Add(new Gpu
{
Name = dbItem.Name,
- Company = Company.GetItem(dbItem.Company.Id),
+ Company = dbItem.Company == null ? null : Company.GetItem(dbItem.Company.Id),
DieSize = dbItem.DieSize,
Introduced = dbItem.Introduced,
ModelCode = dbItem.ModelCode,
diff --git a/cicm_web/Views/Computer/View.cshtml b/cicm_web/Views/Computer/View.cshtml
index 9c92549e..507573ab 100644
--- a/cicm_web/Views/Computer/View.cshtml
+++ b/cicm_web/Views/Computer/View.cshtml
@@ -608,27 +608,124 @@ else
}
}
-
- |
-
- Graphics processor
-
- |
+@if(Model.Gpu == null || Model.Gpu != null && Model.Gpu.Id != -1)
+{
+
+ |
+
+ Graphics processor
+
+ |
- @if(Model.Gpu.Id > 1)
- {
- if(Model.Gpu.Id > 2)
+ @if(Model.Gpu != null)
{
- @Model.Gpu.Name |
+ if(Model.Gpu.Id == -2)
+ {
+
+ Framebuffer
+
+ +info
+
+
+
+ This computer directly draws pixels from software to a memory region that's converted to video output by a DAC or similar without using any specific graphics processing unit.
+
+
+ |
+ }
+ else
+ {
+
+ @($"{Model.Gpu.Name}")
+
+ +info
+
+
+
+
+ @if(Model.Gpu.ModelCode != null && Model.Gpu.ModelCode != Model.Gpu.Name)
+ {
+
+ | Model |
+ @Model.Gpu.ModelCode |
+
+ }
+
+ | Manufacturer |
+
+
+ @Model.Gpu.Company.Name
+ |
+
+ @if(Model.Gpu.Introduced != DateTime.MinValue)
+ {
+
+ | Introduction date |
+ @($"{Model.Gpu.Introduced:yyyy}") |
+
+ }
+ @if(Model.Gpu.Package != null)
+ {
+
+ | Package |
+ @Model.Gpu.Package |
+
+ }
+ @if(Model.Gpu.Process != null || Model.Gpu.ProcessNm > 0)
+ {
+
+ | Manufacturing process |
+
+ @if(Model.Gpu.Process != null && Model.Gpu.ProcessNm > 0)
+ {
+ @Model.Gpu.Process
+ @("@")
+ @(Model.Gpu.ProcessNm > 100 ? $"{Model.Gpu.ProcessNm / 100}µm" : $"{Model.Gpu.ProcessNm}nm")
+ }
+ else if(Model.Gpu.ProcessNm > 0) { @(Model.Gpu.ProcessNm > 100 ? $"{Model.Gpu.ProcessNm / 100}µm" : $"{Model.Gpu.ProcessNm}nm") }
+ else
+ { @Model.Gpu.Process }
+ |
+
+ }
+ @if(Model.Gpu.DieSize > 0)
+ {
+
+ | Die size |
+ @Model.Gpu.DieSize mm² |
+
+ }
+ @if(Model.Gpu.Transistors > 0)
+ {
+
+ | Transistors |
+ @Model.Gpu.Transistors |
+
+ }
+
+
+
+ |
+ }
}
else
{
Unknown data |
}
- }
- else
- { None | }
-
+
+}
|
diff --git a/cicm_web/Views/Console/View.cshtml b/cicm_web/Views/Console/View.cshtml
index b2531ebb..1d819e30 100644
--- a/cicm_web/Views/Console/View.cshtml
+++ b/cicm_web/Views/Console/View.cshtml
@@ -600,27 +600,124 @@ else
}
}
|
-
- |
-
- Graphics processor
-
- |
+@if(Model.Gpu == null || Model.Gpu != null && Model.Gpu.Id != -1)
+{
+
+ |
+
+ Graphics processor
+
+ |
- @if(Model.Gpu.Id > 1)
- {
- if(Model.Gpu.Id > 2)
+ @if(Model.Gpu != null)
{
- @Model.Gpu.Name |
+ if(Model.Gpu.Id == -2)
+ {
+
+ Framebuffer
+
+ +info
+
+
+
+ This videoconsole directly draws pixels from software to a memory region that's converted to video output by a DAC or similar without using any specific graphics processing unit.
+
+
+ |
+ }
+ else
+ {
+
+ @($"{Model.Gpu.Name}")
+
+ +info
+
+
+
+
+ @if(Model.Gpu.ModelCode != null && Model.Gpu.ModelCode != Model.Gpu.Name)
+ {
+
+ | Model |
+ @Model.Gpu.ModelCode |
+
+ }
+
+ | Manufacturer |
+
+
+ @Model.Gpu.Company.Name
+ |
+
+ @if(Model.Gpu.Introduced != DateTime.MinValue)
+ {
+
+ | Introduction date |
+ @($"{Model.Gpu.Introduced:yyyy}") |
+
+ }
+ @if(Model.Gpu.Package != null)
+ {
+
+ | Package |
+ @Model.Gpu.Package |
+
+ }
+ @if(Model.Gpu.Process != null || Model.Gpu.ProcessNm > 0)
+ {
+
+ | Manufacturing process |
+
+ @if(Model.Gpu.Process != null && Model.Gpu.ProcessNm > 0)
+ {
+ @Model.Gpu.Process
+ @("@")
+ @(Model.Gpu.ProcessNm > 100 ? $"{Model.Gpu.ProcessNm / 100}µm" : $"{Model.Gpu.ProcessNm}nm")
+ }
+ else if(Model.Gpu.ProcessNm > 0) { @(Model.Gpu.ProcessNm > 100 ? $"{Model.Gpu.ProcessNm / 100}µm" : $"{Model.Gpu.ProcessNm}nm") }
+ else
+ { @Model.Gpu.Process }
+ |
+
+ }
+ @if(Model.Gpu.DieSize > 0)
+ {
+
+ | Die size |
+ @Model.Gpu.DieSize mm² |
+
+ }
+ @if(Model.Gpu.Transistors > 0)
+ {
+
+ | Transistors |
+ @Model.Gpu.Transistors |
+
+ }
+
+
+
+ |
+ }
}
else
{
Unknown data |
}
- }
- else
- { None | }
-
+
+}
diff --git a/cicm_web/cicm_web.csproj b/cicm_web/cicm_web.csproj
index bf55b1e1..f59e313c 100644
--- a/cicm_web/cicm_web.csproj
+++ b/cicm_web/cicm_web.csproj
@@ -2,7 +2,7 @@
netcoreapp2.0
- 3.0.99.186
+ 3.0.99.189
Canary Islands Computer Museum
Copyright © 2003-2018 Natalia Portillo
Canary Islands Computer Museum Website
|