Compare commits

...

13 Commits

Author SHA1 Message Date
Arkadiusz Hiler
8b5feadcf8 fixup! Update wine 2022-01-20 18:23:22 +02:00
Rémi Bernon
564c729f30
media-converter: Add format=S16LE to audioconv caps.
As opusdec will only output that format, and we want to be able to
filter the elements from their capabilities early.

CW-Bug-Id: #19854
2022-01-20 12:54:06 +01:00
Rémi Bernon
e0ea1ab827
media-converter: Classify proton audioconv as Codec/Decoder/Audio.
Required to match it when enumerating audio decoders.

CW-Bug-Id: #19854
2022-01-20 12:53:44 +01:00
Andrew Eikum
f79c4e2f73
fonts: Update source-han-sans fonts from upstream at v2.004
From https://github.com/adobe-fonts/source-han-sans/ at
eb82513b0bc8a1eaafbdd96ed64da17483c7a52f (2.004).

CW-Bug-Id: #19849
2022-01-19 16:26:58 +01:00
Andrew Eikum
74405c3720
update liberation-fonts to 2.1.5
CW-Bug-Id: #19849
2022-01-19 15:31:33 +01:00
Itoh Shimon
2db581f6df
fonts: Use Ume fonts instead of Source Han Sans Japanese.
They are metrically compatible with MS Gothic fonts. Attack on Titan 2
- A.O.T.2 - 進撃の巨人2 and Touhou Fuujinroku ~ Mountain of Faith are
known to render better with Ume fonts.

CW-Bug-Id: #19849
CW-Bug-Id: #19971
2022-01-19 15:31:18 +01:00
Andrew Eikum
a7287d164a docs: Update CONTROLLERS for Wine 7.0 2022-01-19 11:39:44 +02:00
Arkadiusz Hiler
c9948777fa update vkd3d-proton to v2.5-104-g0f46a8a7 2022-01-19 11:39:44 +02:00
Arkadiusz Hiler
ab2d6ba7ee update dxvk-nvapi to v0.5.1 2022-01-19 11:39:44 +02:00
Arkadiusz Hiler
ab87d785b1 update dxvk to upstream v1.9.3-9-ga268de51
we can drop all the proton-specific customizations now that dxvk's dgxi
is the default one and wined3d interop is gone from vrclient
2022-01-19 11:39:44 +02:00
Esme Povirk
aa89dfd3a2 Update Wine Mono to 7.0.0. 2022-01-19 11:39:44 +02:00
Arkadiusz Hiler
24479ea072 Update wine 2022-01-19 11:39:44 +02:00
Arkadiusz Hiler
0c3dbf2c21 vrclient: Remove wined3d interop.
DXVK interop is still in place.
2022-01-19 11:39:44 +02:00
40 changed files with 199271 additions and 388746 deletions

View File

@ -189,7 +189,7 @@ GECKO_VER := 2.47.2
GECKO32_TARBALL := wine-gecko-$(GECKO_VER)-x86.tar.xz
GECKO64_TARBALL := wine-gecko-$(GECKO_VER)-x86_64.tar.xz
WINEMONO_VER := 6.4.1
WINEMONO_VER := 7.0.0
WINEMONO_TARBALL := wine-mono-$(WINEMONO_VER)-x86.tar.xz
FONTS := $(SRCDIR)/fonts
@ -343,7 +343,7 @@ $(DIST_FONTS): fonts
cp $(FONTS_OBJ)/*.ttf "$@"
cp $(FONTS_OBJ)/source-han/msyh.ttf "$@"
cp $(FONTS_OBJ)/source-han/simsun.ttc "$@"
cp $(FONTS_OBJ)/source-han/msgothic.ttc "$@"
cp $(FONTS_OBJ)/ume-gothic/msgothic.ttc "$@"
cp $(FONTS_OBJ)/source-han/malgun.ttf "$@"
.PHONY: dist
@ -616,7 +616,6 @@ WINE_SOURCE_ARGS = \
WINE_CONFIGURE_ARGS = \
--with-mingw \
--without-xpresent \
--disable-tests
WINE_CONFIGURE_ARGS64 = --enable-win64
@ -860,6 +859,7 @@ MERGEFONTSSCRIPT = $(FONTS)/scripts/mergefonts.pe
LIBERATION_SRCDIR = $(FONTS)/liberation-fonts/src
SOURCE_HAN_SANS_SRCDIR = $(FONTS)/source-han-sans
UME_DIR = $(FONTS)/ume
msyh.ttf_CIDFONTINFO = $(SOURCE_HAN_SANS_SRCDIR)/cidfontinfo.OTC.SC
msyh.ttf_CIDFONT = $(SOURCE_HAN_SANS_SRCDIR)/cidfont.ps.OTC.SC
@ -885,29 +885,17 @@ nsimsun.ttf_UNISOURCE = $(SOURCE_HAN_SANS_SRCDIR)/UniSourceHanSansCN-UTF32-H
nsimsun.ttf_MENUNAMEDB = $(FONTS)/patches/NSimSun-FontMenuNameDB
nsimsun.ttf = $(FONTS_OBJ)/source-han/nsimsun.ttf
msgothic.ttf_CIDFONTINFO = $(SOURCE_HAN_SANS_SRCDIR)/cidfontinfo.OTC.J
msgothic.ttf_CIDFONT = $(SOURCE_HAN_SANS_SRCDIR)/cidfont.ps.OTC.J
msgothic.ttf_FEATURES = $(SOURCE_HAN_SANS_SRCDIR)/features.OTC.J
msgothic.ttf_SEQUENCES = $(SOURCE_HAN_SANS_SRCDIR)/SourceHanSans_JP_sequences.txt
msgothic.ttf_UNISOURCE = $(SOURCE_HAN_SANS_SRCDIR)/UniSourceHanSansJP-UTF32-H
msgothic.ttf_MENUNAMEDB = $(FONTS)/patches/MSGothic-FontMenuNameDB
msgothic.ttf = $(FONTS_OBJ)/source-han/msgothic.ttf
msgothic.ttf_FONT = $(UME_DIR)/ume-tgo4.ttf
msgothic.ttf_NAMETABLE_PATCH = $(FONTS)/patches/UmeGothic-nametable.patch
msgothic.ttf = $(FONTS_OBJ)/ume-gothic/msgothic.ttf
mspgothic.ttf_CIDFONTINFO = $(SOURCE_HAN_SANS_SRCDIR)/cidfontinfo.OTC.J
mspgothic.ttf_CIDFONT = $(SOURCE_HAN_SANS_SRCDIR)/cidfont.ps.OTC.J
mspgothic.ttf_FEATURES = $(SOURCE_HAN_SANS_SRCDIR)/features.OTC.J
mspgothic.ttf_SEQUENCES = $(SOURCE_HAN_SANS_SRCDIR)/SourceHanSans_JP_sequences.txt
mspgothic.ttf_UNISOURCE = $(SOURCE_HAN_SANS_SRCDIR)/UniSourceHanSansJP-UTF32-H
mspgothic.ttf_MENUNAMEDB = $(FONTS)/patches/MSPGothic-FontMenuNameDB
mspgothic.ttf = $(FONTS_OBJ)/source-han/mspgothic.ttf
mspgothic.ttf_FONT = $(UME_DIR)/ume-pgo4.ttf
mspgothic.ttf_NAMETABLE_PATCH = $(FONTS)/patches/UmePGothic-nametable.patch
mspgothic.ttf = $(FONTS_OBJ)/ume-gothic/mspgothic.ttf
msuigothic.ttf_CIDFONTINFO = $(SOURCE_HAN_SANS_SRCDIR)/cidfontinfo.OTC.J
msuigothic.ttf_CIDFONT = $(SOURCE_HAN_SANS_SRCDIR)/cidfont.ps.OTC.J
msuigothic.ttf_FEATURES = $(SOURCE_HAN_SANS_SRCDIR)/features.OTC.J
msuigothic.ttf_SEQUENCES = $(SOURCE_HAN_SANS_SRCDIR)/SourceHanSans_JP_sequences.txt
msuigothic.ttf_UNISOURCE = $(SOURCE_HAN_SANS_SRCDIR)/UniSourceHanSansJP-UTF32-H
msuigothic.ttf_MENUNAMEDB = $(FONTS)/patches/MSUIGothic-FontMenuNameDB
msuigothic.ttf = $(FONTS_OBJ)/source-han/msuigothic.ttf
msuigothic.ttf_FONT = $(UME_DIR)/ume-ugo4.ttf
msuigothic.ttf_NAMETABLE_PATCH = $(FONTS)/patches/UmeUIGothic-nametable.patch
msuigothic.ttf = $(FONTS_OBJ)/ume-gothic/msuigothic.ttf
malgun.ttf_CIDFONTINFO = $(SOURCE_HAN_SANS_SRCDIR)/cidfontinfo.OTC.K
malgun.ttf_CIDFONT = $(SOURCE_HAN_SANS_SRCDIR)/cidfont.ps.OTC.K
@ -918,7 +906,7 @@ malgun.ttf_MENUNAMEDB = $(FONTS)/patches/Malgun-FontMenuNameDB
malgun.ttf = $(FONTS_OBJ)/source-han/malgun.ttf
simsun.ttc = $(FONTS_OBJ)/source-han/simsun.ttc
msgothic.ttc = $(FONTS_OBJ)/source-han/msgothic.ttc
msgothic.ttc = $(FONTS_OBJ)/ume-gothic/msgothic.ttc
noto_sans.ttf = $(FONTS)/noto/NotoSans-Regular.ttf
noto_sans_arabic.ttf = $(FONTS)/noto/NotoSansArabic-Regular.ttf
@ -986,6 +974,12 @@ $(FONTS_OBJ)/source-han/%.ttf: $$(%.ttf_CIDFONTINFO) $$(%.ttf_CIDFONTINFO) $$(%.
(TEMP_DIR=`mktemp -d` && cd $$TEMP_DIR && $(AFDKO_VERB) sfntedit -a CFF=$(abspath $($(notdir $@)).cff) $(abspath $@.tmp) && rm -fr $$TEMP_DIR)
mv $@.tmp $@
$(FONTS_OBJ)/ume-gothic/%.ttf: $$(%.ttf_FONT) $$(%.ttf_NAMETABLE_PATCH)
mkdir -p $(FONTS_OBJ)/ume-gothic
ttx -o $(FONTS_OBJ)/ume-gothic/$(notdir $(basename $($(notdir $@)_NAMETABLE_PATCH))).ttx -t name $($(notdir $@)_FONT)
patch $(FONTS_OBJ)/ume-gothic/$(notdir $(basename $($(notdir $@)_NAMETABLE_PATCH))).ttx $($(notdir $@)_NAMETABLE_PATCH)
ttx -o $@ -m $($(notdir $@)_FONT) $(FONTS_OBJ)/ume-gothic/$(notdir $(basename $($(notdir $@)_NAMETABLE_PATCH))).ttx
$(simsun.ttc): $(simsun.ttf) $(nsimsun.ttf)
$(AFDKO_VERB) otf2otc -o $@ $^

View File

@ -59,15 +59,13 @@ def setup_dll_symlinks(default_pfx_dir, dist_dir):
if os.path.isfile(filename) and file_is_wine_builtin_dll(filename):
bitness = dll_bitness(filename)
if bitness == 32:
libdir = os.path.join(dist_dir, 'lib/wine')
libdir = os.path.join(dist_dir, 'lib/wine/i386-windows')
elif bitness == 64:
libdir = os.path.join(dist_dir, 'lib64/wine')
libdir = os.path.join(dist_dir, 'lib64/wine/x86_64-windows')
else:
continue
if os.path.exists(os.path.join(libdir, file_)):
target = os.path.join(libdir, file_)
elif os.path.exists(os.path.join(libdir, 'fakedlls', file_)):
target = os.path.join(libdir, 'fakedlls', file_)
else:
continue
os.unlink(filename)

View File

@ -110,6 +110,19 @@ Visit Source Han Sans at
---- ---- ---- ----
This software contains Ume fonts distributed under the following license:
These fonts are free software. Unlimited permission is granted to
use, copy, and distribute it, with or without modification, either
commercially and noncommercially. THESE FONTS ARE PROVIDED "AS
IS" WITHOUT WARRANTY.
Visit Ume fonts home page at
https://osdn.net/projects/ume-font/
---- ---- ---- ----
This software contains some fonts from the Google Noto collection, licensed under the SIL Open Font License, available at LICENSE.OFL. They are
Copyright 2015 Google Inc.

View File

@ -15,53 +15,68 @@ the game's behalf. This turns the raw HID protocol data into usable things like
buttons and joysticks.
dinput is a "legacy" API that allows applictions to talk to any type of
joystick. On Windows, it is likely implemented on top of HID. Notably, dinput
allows easy access to controllers that no other API does, so it is still used
by modern games despite being "legacy."
joystick. On Windows, it is implemented on top of HID. Notably, dinput allows
easy access to controllers that no other API does, so it is still used by
modern games despite being "legacy."
xinput is the new API that supports only Xbox controllers. On Windows, it is
likely implemented on top of rawinput, as Xbox controllers do not behave like
standard HID devices.
winmm is the very legacy API, for when joysticks were hooked up through the
soundcard. On modern Windows, it is likely implemented on top of hid.
soundcard. On modern Windows, it is implemented on top of dinput.
Here is a diagram for how these APIs are mapped down to the system by Proton:
--------
|game.exe|
--------
/ | | | | application
********|**|*|*|**|***********************
------ / | | | | wine
|xinput| | | | |
------ / | | |
| / | | |
--- / / | \
|hid|--- / | \
--- / | \
| / | \
-------- ------ -----
|rawinput| |dinput| |winmm|
-------- ------ -----
| | |
----------- | ----------------
|winebus.sys| | |winejoystick.drv|
----------- | ----------------
| \ / | wine
***|*********|***********|****************
\ | | linux
\ ---- |
\ |SDL2| |
\ ---- |
\ | \ |
\ | ---- |
\ | \ |
------ -----------
|hidraw| |input event|
------ -----------
----------
| game.exe |
----------
/ | | | \
/ | | | \ application
*********/****|*|**|****\******************
| | | \ \ wine
| | | | \
------ | | ----- \
|xinput| | | |winmm| |
------ | | ----- |
| | \ | |
| | | | |
\ | ------ |
\ | |dinput| |
\ | ------ /
| | / /
| | | /
--- /
|hid| /
--- /
| /
| |
--------
|rawinput|
--------
|
-----------
|winebus.sys|
-----------
| | wine
************|******|***********************
| | linux
| ----
| |SDL2|
| ----
| | \
| | \
| | |
------ -----------
|hidraw| |input event|
------ -----------
| |
\ /
========
|hardware|
========
Some things to note:
@ -74,7 +89,7 @@ other) protocol can talk directly to those devices.
Xbox controllers do not speak real HID. Instead Windows provides a HID
compatibility layer so dinput, which is implemented on top of HID, will present
the Xbox controller to legacy games. Of course some games (Unity) have noticed
that, and talk directly to this internal HID interface, so we had to duplicate
that, and talk directly to this internal HID interface, so we need to duplicate
it bit-for-bit in winebus.sys.
Some games support talking directly to certain controller types. For example,
@ -98,16 +113,3 @@ device for your controller, especially if it is a less well-known controller.
In those cases, we access it through SDL2 via its linux js backend and try to
treat it as an Xbox controller, even if it is not mapped with the Steam client
mapping feature.
Future improvements:
winmm's joystick APIs should be implemented on top of HID so it can use the
Steam controller mapping feature via winebus/SDL2.
xinput should be implemented on top of rawinput, as the Xbox HID compatibility
layer does not provide all of the features xinput requires. We currently use a
hack to work around this.
dinput should be implemented on top of HID, so we can avoid the code
duplication we have now with both winebus and dinput using SDL2 directly.

2
dxvk

@ -1 +1 @@
Subproject commit 78ef4cfd92cb7f448292aaca83091914ab271257
Subproject commit a268de51e3f7cddce54dc2beea487936ddc3913e

@ -1 +1 @@
Subproject commit acbcf35e327f2d189e1a9322bc1359a22d36cf6a
Subproject commit e23d450316521d22cc37b0f66b2d5778e63596ee

@ -1 +1 @@
Subproject commit 9510ebd130bcb4dfc76b053b438d8a97a3ed4600
Subproject commit 4b0192046158094654e865245832c66d2104219e

View File

@ -1,8 +1,6 @@
diff --git a/LiberationMono-Regular.sfd b/LiberationMono-Regular.sfd
index 0cedbd4..13b9a63 100644
--- a/LiberationMono-Regular.sfd
+++ b/LiberationMono-Regular.sfd
@@ -3931,6 +3931,10 @@ ShortTable: maxp 16
@@ -3935,6 +3935,10 @@
3
1
EndShort
@ -10,6 +8,6 @@ index 0cedbd4..13b9a63 100644
+!!!!"!!**$!<E0/!"B2J!!iQ/s8E!)!"&](!"&]4s8;p*!"8i*!"8i9s8;p,!"Ao*!"Ju<s82j-
+!"Ju+!"],?s82j/!"],,!"o8Bs8)d0!"f2-!#,DFs8)cr
+EndTtf
LangName: 1033 "" "" "Regular" "Ascender - Liberation Mono" "" "Version 2.00.3" "" "Liberation is a trademark of Red Hat, Inc. registered in U.S. Patent and Trademark Office and certain other jurisdictions." "Ascender Corporation" "Steve Matteson" "Based on Cousine, which was designed by Steve Matteson as an innovative, refreshing sans serif design that is metrically compatible with Courier New+ISIA. Cousine offers improved on-screen readability characteristics and the pan-European WGL character set and solves the needs of developers looking for width-compatible fonts to address document portability across platforms." "http://www.ascendercorp.com/" "http://www.ascendercorp.com/typedesigners.html" "Licensed under the SIL Open Font License, Version 1.1" "http://scripts.sil.org/OFL"
LangName: 1033 "" "" "Regular" "Ascender - Liberation Mono" "" "Version 2.1.5" "" "Liberation is a trademark of Red Hat, Inc. registered in U.S. Patent and Trademark Office and certain other jurisdictions." "Ascender Corporation" "Steve Matteson" "Based on Cousine, which was designed by Steve Matteson as an innovative, refreshing sans serif design that is metrically compatible with Courier New+ISIA. Cousine offers improved on-screen readability characteristics and the pan-European WGL character set and solves the needs of developers looking for width-compatible fonts to address document portability across platforms." "http://www.ascendercorp.com/" "http://www.ascendercorp.com/typedesigners.html" "Licensed under the SIL Open Font License, Version 1.1" "http://scripts.sil.org/OFL"
GaspTable: 3 8 2 17 1 65535 3 0
Encoding: UnicodeBmp

View File

@ -1,5 +0,0 @@
[SourceHanSans-Regular]
f=3,1,0x411,\FF2D\FF33 \30B4\30B7\30C3\30AF
s=3,1,0x411,\6A19\6E96
f=MS Gothic
s=Regular

View File

@ -1,5 +0,0 @@
[SourceHanSans-Regular]
f=3,1,0x411,\FF2D\FF33 \FF30\30B4\30B7\30C3\30AF
s=3,1,0x411,\6A19\6E96
f=MS PGothic
s=Regular

View File

@ -1,5 +0,0 @@
[SourceHanSans-Regular]
f=3,1,0x411,MS UI Gothic
s=3,1,0x411,\6A19\6E96
f=MS UI Gothic
s=Regular

View File

@ -0,0 +1,86 @@
--- a/UmeGothic-nametable.ttx 2021-11-14 02:41:52.823198735 +0900
+++ b/UmeGothic-nametable.ttx 2021-11-14 02:44:50.269352384 +0900
@@ -5,8 +5,12 @@
<namerecord nameID="0" platformID="1" platEncID="0" langID="0x411" unicode="True">
Author: HORAI Wataru. License: This font is a free software. Unlimited permission is granted to use, copy, and distribute it, with or without modification, either commercially and noncommercially. THIS FONT IS PROVIDED "AS IS" WITHOUT WARRANTY.
</namerecord>
+ <!--
+ NameID=1 (Family)
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
+ -->
<namerecord nameID="1" platformID="1" platEncID="0" langID="0x411" unicode="True">
- Ume Gothic
+ MS Gothic
</namerecord>
<namerecord nameID="2" platformID="1" platEncID="0" langID="0x411" unicode="True">
Regular
@@ -14,8 +18,12 @@
<namerecord nameID="3" platformID="1" platEncID="0" langID="0x411" unicode="True">
Ume Gothic
</namerecord>
+ <!--
+ NameID=4 (Full)
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
+ -->
<namerecord nameID="4" platformID="1" platEncID="0" langID="0x411" unicode="True">
- Ume Gothic
+ MS Gothic
</namerecord>
<namerecord nameID="5" platformID="1" platEncID="0" langID="0x411" unicode="True">
Look update time of this file.
@@ -29,8 +37,12 @@
<namerecord nameID="0" platformID="3" platEncID="1" langID="0x409">
Author: HORAI Wataru. License: This font is a free software. Unlimited permission is granted to use, copy, and distribute it, with or without modification, either commercially and noncommercially. THIS FONT IS PROVIDED "AS IS" WITHOUT WARRANTY.
</namerecord>
+ <!--
+ NameID=1 (Family)
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
+ -->
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
- Ume Gothic
+ MS Gothic
</namerecord>
<namerecord nameID="2" platformID="3" platEncID="1" langID="0x409">
Regular
@@ -38,8 +50,12 @@
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x409">
Ume Gothic
</namerecord>
+ <!--
+ NameID=4 (Full)
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
+ -->
<namerecord nameID="4" platformID="3" platEncID="1" langID="0x409">
- Ume Gothic
+ MS Gothic
</namerecord>
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x409">
Look update time of this file.
@@ -53,8 +69,12 @@
<namerecord nameID="0" platformID="3" platEncID="1" langID="0x411">
作者: 蓬莱和多流. ライセンス: このフォントはフリー(自由な)ソフトウエアです。あらゆる改変の有無に関わらず、また商業的な利用であっても、自由に利用、複製、再配布することができますが、全て無保証とさせていただきます。
</namerecord>
+ <!--
+ NameID=1 (Family)
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
+ -->
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x411">
- 梅ゴシック
+ ゴシック
</namerecord>
<namerecord nameID="2" platformID="3" platEncID="1" langID="0x411">
Regular
@@ -62,8 +82,12 @@
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x411">
梅ゴシック
</namerecord>
+ <!--
+ NameID=4 (Full)
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
+ -->
<namerecord nameID="4" platformID="3" platEncID="1" langID="0x411">
- 梅ゴシック
+ ゴシック
</namerecord>
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x411">
Look update time of this file.

View File

@ -0,0 +1,86 @@
--- a/UmePGothic-nametable.ttx 2021-11-14 02:41:46.983127001 +0900
+++ b/UmePGothic-nametable.ttx 2021-11-14 02:44:42.413257975 +0900
@@ -5,8 +5,12 @@
<namerecord nameID="0" platformID="1" platEncID="0" langID="0x411" unicode="True">
Author: HORAI Wataru. License: This font is a free software. Unlimited permission is granted to use, copy, and distribute it, with or without modification, either commercially and noncommercially. THIS FONT IS PROVIDED "AS IS" WITHOUT WARRANTY.
</namerecord>
+ <!--
+ NameID=1 (Family)
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
+ -->
<namerecord nameID="1" platformID="1" platEncID="0" langID="0x411" unicode="True">
- Ume P Gothic
+ MS PGothic
</namerecord>
<namerecord nameID="2" platformID="1" platEncID="0" langID="0x411" unicode="True">
Regular
@@ -14,8 +18,12 @@
<namerecord nameID="3" platformID="1" platEncID="0" langID="0x411" unicode="True">
Ume P Gothic
</namerecord>
+ <!--
+ NameID=4 (Full)
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
+ -->
<namerecord nameID="4" platformID="1" platEncID="0" langID="0x411" unicode="True">
- Ume P Gothic
+ MS PGothic
</namerecord>
<namerecord nameID="5" platformID="1" platEncID="0" langID="0x411" unicode="True">
Look update time of this file.
@@ -29,8 +37,12 @@
<namerecord nameID="0" platformID="3" platEncID="1" langID="0x409">
Author: HORAI Wataru. License: This font is a free software. Unlimited permission is granted to use, copy, and distribute it, with or without modification, either commercially and noncommercially. THIS FONT IS PROVIDED "AS IS" WITHOUT WARRANTY.
</namerecord>
+ <!--
+ NameID=1 (Family)
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
+ -->
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
- Ume P Gothic
+ MS PGothic
</namerecord>
<namerecord nameID="2" platformID="3" platEncID="1" langID="0x409">
Regular
@@ -38,8 +50,12 @@
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x409">
Ume P Gothic
</namerecord>
+ <!--
+ NameID=4 (Full)
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
+ -->
<namerecord nameID="4" platformID="3" platEncID="1" langID="0x409">
- Ume P Gothic
+ MS PGothic
</namerecord>
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x409">
Look update time of this file.
@@ -53,8 +69,12 @@
<namerecord nameID="0" platformID="3" platEncID="1" langID="0x411">
作者: 蓬莱和多流. ライセンス: このフォントはフリー(自由な)ソフトウエアです。あらゆる改変の有無に関わらず、また商業的な利用であっても、自由に利用、複製、再配布することができますが、全て無保証とさせていただきます。
</namerecord>
+ <!--
+ NameID=1 (Family)
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
+ -->
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x411">
- 梅Pゴシック
+ Pゴシック
</namerecord>
<namerecord nameID="2" platformID="3" platEncID="1" langID="0x411">
Regular
@@ -62,8 +82,12 @@
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x411">
梅Pゴシック
</namerecord>
+ <!--
+ NameID=4 (Full)
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
+ -->
<namerecord nameID="4" platformID="3" platEncID="1" langID="0x411">
- 梅Pゴシック
+ Pゴシック
</namerecord>
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x411">
Look update time of this file.

View File

@ -0,0 +1,86 @@
--- a/UmeUIGothic-nametable.ttx 2021-11-14 02:41:57.955261726 +0900
+++ b/UmeUIGothic-nametable.ttx 2021-11-14 02:44:57.653441054 +0900
@@ -5,8 +5,12 @@
<namerecord nameID="0" platformID="1" platEncID="0" langID="0x411" unicode="True">
Author: HORAI Wataru. License: This font is a free software. Unlimited permission is granted to use, copy, and distribute it, with or without modification, either commercially and noncommercially. THIS FONT IS PROVIDED "AS IS" WITHOUT WARRANTY.
</namerecord>
+ <!--
+ NameID=1 (Family)
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
+ -->
<namerecord nameID="1" platformID="1" platEncID="0" langID="0x411" unicode="True">
- Ume UI Gothic
+ MS UI Gothic
</namerecord>
<namerecord nameID="2" platformID="1" platEncID="0" langID="0x411" unicode="True">
Regular
@@ -14,8 +18,12 @@
<namerecord nameID="3" platformID="1" platEncID="0" langID="0x411" unicode="True">
Ume UI Gothic
</namerecord>
++ <!--
++ NameID=4 (Full)
++ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
++ -->
<namerecord nameID="4" platformID="1" platEncID="0" langID="0x411" unicode="True">
- Ume UI Gothic
+ MS UI Gothic
</namerecord>
<namerecord nameID="5" platformID="1" platEncID="0" langID="0x411" unicode="True">
Look update time of this file.
@@ -29,8 +37,12 @@
<namerecord nameID="0" platformID="3" platEncID="1" langID="0x409">
Author: HORAI Wataru. License: This font is a free software. Unlimited permission is granted to use, copy, and distribute it, with or without modification, either commercially and noncommercially. THIS FONT IS PROVIDED "AS IS" WITHOUT WARRANTY.
</namerecord>
+ <!--
+ NameID=1 (Family)
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
+ -->
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
- Ume UI Gothic
+ MS UI Gothic
</namerecord>
<namerecord nameID="2" platformID="3" platEncID="1" langID="0x409">
Regular
@@ -38,8 +50,12 @@
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x409">
Ume UI Gothic
</namerecord>
+ <!--
+ NameID=4 (Full)
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
+ -->
<namerecord nameID="4" platformID="3" platEncID="1" langID="0x409">
- Ume UI Gothic
+ MS UI Gothic
</namerecord>
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x409">
Look update time of this file.
@@ -53,8 +69,12 @@
<namerecord nameID="0" platformID="3" platEncID="1" langID="0x411">
作者: 蓬莱和多流. ライセンス: このフォントはフリー(自由な)ソフトウエアです。あらゆる改変の有無に関わらず、また商業的な利用であっても、自由に利用、複製、再配布することができますが、全て無保証とさせていただきます。
</namerecord>
+ <!--
+ NameID=1 (Family)
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
+ -->
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x411">
- 梅UIゴシック
+ MS UI Gothic
</namerecord>
<namerecord nameID="2" platformID="3" platEncID="1" langID="0x411">
Regular
@@ -62,8 +82,12 @@
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x411">
梅UIゴシック
</namerecord>
+ <!--
+ NameID=4 (Full)
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
+ -->
<namerecord nameID="4" platformID="3" platEncID="1" langID="0x411">
- 梅UIゴシック
+ MS UI Gothic
</namerecord>
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x411">
Look update time of this file.

File diff suppressed because it is too large Load Diff

View File

@ -29,8 +29,8 @@
8941 E0105; KRName; CID+62775
8AA0 E0104; KRName; CID+37864
8AA0 E0105; KRName; CID+62792
8ACB E0104; KRName; CID+62792
8ACB E0105; KRName; CID+37864
8ACB E0104; KRName; CID+62795
8ACB E0105; KRName; CID+37953
927C E0103; KRName; CID+41543
927C E0104; KRName; CID+41542
9F9C E0107; KRName; CID+47476

View File

@ -3,9 +3,9 @@
%%IncludeResource: ProcSet (CIDInit)
%%BeginResource: CMap (UniSourceHanSansCN-UTF32-H)
%%Title: (UniSourceHanSansCN-UTF32-H Adobe Identity 0)
%%Version: 2.001
%%Version: 2.004
%%Copyright: -----------------------------------------------------------
%%Copyright: Copyright 1990-2019 Adobe. All rights reserved.
%%Copyright: Copyright 1990-2021 Adobe. All rights reserved.
%%Copyright:
%%Copyright: Redistribution and use in source and binary forms, with or
%%Copyright: without modification, are permitted provided that the
@ -53,7 +53,7 @@ begincmap
end def
/CMapName /UniSourceHanSansCN-UTF32-H def
/CMapVersion 2.001 def
/CMapVersion 2.004 def
/CMapType 1 def
/WMode 0 def
@ -11804,7 +11804,7 @@ endcidchar
<0002f91a> 61840
endcidchar
8 begincidchar
12 begincidchar
<0002f945> 61843
<0002f947> 61844
<0002f96c> 61845
@ -11813,6 +11813,10 @@ endcidchar
<0002f9d0> 61849
<0002f9d4> 61850
<0002f9f4> 61853
<00030729> 61858
<00030edd> 61859
<00030ede> 61856
<0003106c> 61861
endcidchar
100 begincidrange

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,22 +0,0 @@
FontName (SourceHanSans-Regular)
FullName (Source Han Sans Regular)
FamilyName (Source Han Sans)
Weight (Regular)
version (2.001)
Registry (Adobe)
Ordering (Identity)
Supplement 0
Layout (AI0-SourceHanSans)
FSType 0
isFixedPitch false
UnderlinePosition -150
AdobeCopyright (Copyright 2014-2019 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source'.)
Trademark (Source is a trademark of Adobe in the United States and/or other countries.)
Serif false
IsBoldStyle false
IsItalicStyle false
PreferOS/2TypoMetrics false
IsOS/2WidthWeigthSlopeOnly false
IsOS/2OBLIQUE false
UseOldNameID4 false
LicenseCode ADOBE

View File

@ -2,7 +2,7 @@ FontName (SourceHanSansK-Regular)
FullName (Source Han Sans Korean Regular)
FamilyName (Source Han Sans Korean)
Weight (Regular)
version (2.001)
version (2.004)
Registry (Adobe)
Ordering (Identity)
Supplement 0
@ -10,7 +10,7 @@ Layout (AI0-SourceHanSans)
FSType 0
isFixedPitch false
UnderlinePosition -150
AdobeCopyright (Copyright 2014-2019 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source'.)
AdobeCopyright (Copyright 2014-2021 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source'.)
Trademark (Source is a trademark of Adobe in the United States and/or other countries.)
Serif false
IsBoldStyle false

View File

@ -2,7 +2,7 @@ FontName (SourceHanSansSC-Regular)
FullName (Source Han Sans Simplified Chinese Regular)
FamilyName (Source Han Sans Simplified Chinese)
Weight (Regular)
version (2.001)
version (2.004)
Registry (Adobe)
Ordering (Identity)
Supplement 0
@ -10,7 +10,7 @@ Layout (AI0-SourceHanSans)
FSType 0
isFixedPitch false
UnderlinePosition -150
AdobeCopyright (Copyright 2014-2019 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source'.)
AdobeCopyright (Copyright 2014-2021 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source'.)
Trademark (Source is a trademark of Adobe in the United States and/or other countries.)
Serif false
IsBoldStyle false

File diff suppressed because it is too large Load Diff

View File

@ -37,7 +37,7 @@ languagesystem hani ZHT;
languagesystem hani ZHH;
table head {
FontRevision 2.001;
FontRevision 2.004;
} head;
table hhea {
@ -47,7 +47,7 @@ table hhea {
} hhea;
table name {
nameid 0 "\00A9 2014-2019 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source'.";
nameid 0 "\00A9 2014-2021 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source'.";
nameid 7 "Source is a trademark of Adobe in the United States and/or other countries.";
nameid 8 "Adobe";
nameid 9 "Ryoko NISHIZUKA \897F\585A\6DBC\5B50 (kana, bopomofo & ideographs); Paul D. Hunt (Latin, Greek & Cyrillic); Sandoll Communications \C0B0\B3CC\CEE4\BBA4\B2C8\CF00\C774\C158, Soo-young JANG \C7A5\C218\C601 & Joo-yeon KANG \AC15\C8FC\C5F0 (hangul elements, letters & syllables)";
@ -364,47 +364,6 @@ lookup std_ccmp {
substitute \63128 \63128 by \63143;
substitute \723 \723 \723 by \63144;
substitute \723 \723 by \63143;
# UTC-00791 (Extension G)
# JP
substitute \1394 \40029 \1387 \29388 \1384 \20694 \1384 \1386 \1385 \16866 \42830 \1385 \37543 \44746 \1385 \16866 \42830 \11137 \17487 by \61854;
# KR
substitute \1394 \40029 \1387 \62576 \1384 \20694 \1384 \1386 \1385 \16866 \42830 \1385 \37543 \44746 \1385 \16866 \42830 \11137 \17487 by \61855;
# CN
substitute \1394 \40030 \1387 \29389 \1384 \20694 \1384 \1386 \1385 \16867 \42831 \1385 \37544 \44746 \1385 \16867 \42831 \11137 \17488 by \61856;
# TW
substitute \1394 \40031 \1387 \29390 \1384 \20694 \1384 \1386 \1385 \16867 \42831 \1385 \37544 \44746 \1385 \16867 \42831 \11137 \17488 by \61857;
# HK
substitute \1394 \40031 \1387 \29389 \1384 \20694 \1384 \1386 \1385 \16867 \42831 \1385 \37544 \44746 \1385 \16867 \42831 \11137 \17488 by \61857;
# UTC-01200 (Extension G)
# JP/KR
substitute \1384 \23011 \17745 by \61858;
# CN/TW/HK
substitute \1384 \23011 \17746 by \61858;
# UTC-01312 (Extension G)
# JP
substitute \1394 \40029 \1387 \29388 \1384 \20694 \1384 \1386 \1385 \16866 \42842 \1385 \37543 \45072 \1385 \16866 \42842 \11137 \17487 by \61859;
# KR
substitute \1394 \40029 \1387 \62576 \1384 \20694 \1384 \1386 \1385 \16866 \42842 \1385 \37543 \45072 \1385 \16866 \42842 \11137 \17487 by \61859;
# CN
substitute \1394 \40030 \1387 \29389 \1384 \20694 \1384 \1386 \1385 \16867 \42842 \1385 \37544 \45072 \1385 \16867 \42842 \11137 \17488 by \61859;
# TW
substitute \1394 \40031 \1387 \29390 \1384 \20694 \1384 \1386 \1385 \16867 \42842 \1385 \37544 \45072 \1385 \16867 \42842 \11137 \17488 by \61859;
# HK
substitute \1394 \40031 \1387 \29389 \1384 \20694 \1384 \1386 \1385 \16867 \42842 \1385 \37544 \45072 \1385 \16867 \42842 \11137 \17488 by \61859;
# UK-02960 (Extension G): Long IDS
# JP/KR
substitute \1387 \43442 \1386 \43442 \47443 \43442 \1384 \47443 \47443 by \61860;
# CN
substitute \1387 \43443 \1386 \43443 \47444 \43443 \1384 \47444 \47444 by \61861;
# TW
substitute \1387 \43444 \1386 \43444 \47445 \43444 \1384 \47445 \47445 by \61862;
# HK
substitute \1387 \43444 \1386 \43444 \47444 \43444 \1384 \47444 \47444 by \61863;
# UK-02960 (Extension G): Short IDS
# JP/KR/CN/HK
# substitute \1389 \8547 \47471 by \61860;
# TW
# substitute \1389 \8547 \47472 by \61862;
substitute \1447 \1449 by \1445;
substitute \1448 \1449 by \1446;
substitute \1461 \1546 by \61872;
@ -3905,6 +3864,7 @@ lookup kr2jp useExtension {
substitute \13215 by \13214;
substitute \13690 by \13689;
substitute \13787 by \13786;
substitute \13900 by \13899;
substitute \14020 by \14019;
substitute \14036 by \14035;
substitute \14065 by \14064;
@ -4185,7 +4145,6 @@ lookup kr2jp useExtension {
substitute \61852 by \39830;
substitute \61855 by \61854;
substitute \61899 by \10855;
substitute \61900 by \10989;
substitute \61905 by \11892;
substitute \61909 by \12827;
substitute \61920 by \17069;
@ -5065,6 +5024,7 @@ lookup kr2cn useExtension {
substitute \10973 by \10974;
substitute \10983 by \10984;
substitute \10985 by \10986;
substitute \10989 by \61900;
substitute \10990 by \10991;
substitute \11005 by \11006;
substitute \11010 by \11011;
@ -5666,7 +5626,6 @@ lookup kr2cn useExtension {
substitute \13890 by \13891;
substitute \13894 by \13895;
substitute \13896 by \13897;
substitute \13899 by \13900;
substitute \13901 by \13902;
substitute \13904 by \13905;
substitute \13906 by \13907;
@ -14243,6 +14202,7 @@ lookup kr2tw useExtension {
substitute \10979 by \10980;
substitute \10983 by \10984;
substitute \10985 by \10987;
substitute \10989 by \61900;
substitute \10990 by \10991;
substitute \10996 by \10997;
substitute \11005 by \11006;
@ -14990,7 +14950,6 @@ lookup kr2tw useExtension {
substitute \13890 by \13891;
substitute \13894 by \13895;
substitute \13896 by \13897;
substitute \13899 by \13900;
substitute \13901 by \13902;
substitute \13904 by \13905;
substitute \13906 by \13908;
@ -26220,6 +26179,7 @@ lookup kr2hk useExtension {
substitute \10973 by \10974;
substitute \10983 by \10984;
substitute \10985 by \10987;
substitute \10989 by \61900;
substitute \10990 by \10991;
substitute \10996 by \10997;
substitute \11005 by \11006;
@ -26934,7 +26894,6 @@ lookup kr2hk useExtension {
substitute \13890 by \13891;
substitute \13894 by \13895;
substitute \13896 by \13897;
substitute \13899 by \13900;
substitute \13901 by \13902;
substitute \13904 by \13905;
substitute \13906 by \13907;
@ -27544,7 +27503,6 @@ lookup kr2hk useExtension {
substitute \15731 by \15732;
substitute \15737 by \15739;
substitute \15742 by \15743;
substitute \15744 by \15745;
substitute \15755 by \15756;
substitute \15761 by \15763;
substitute \15769 by \15770;
@ -27584,6 +27542,7 @@ lookup kr2hk useExtension {
substitute \15912 by \15914;
substitute \15915 by \15916;
substitute \15917 by \15918;
substitute \15923 by \65530;
substitute \15925 by \15926;
substitute \15927 by \15928;
substitute \15929 by \15930;

View File

@ -37,7 +37,7 @@ languagesystem hani ZHT;
languagesystem hani ZHH;
table head {
FontRevision 2.001;
FontRevision 2.004;
} head;
table hhea {
@ -47,7 +47,7 @@ table hhea {
} hhea;
table name {
nameid 0 "\00A9 2014-2019 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source'.";
nameid 0 "\00A9 2014-2021 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source'.";
nameid 7 "Source is a trademark of Adobe in the United States and/or other countries.";
nameid 8 "Adobe";
nameid 9 "Ryoko NISHIZUKA \897F\585A\6DBC\5B50 (kana, bopomofo & ideographs); Paul D. Hunt (Latin, Greek & Cyrillic); Sandoll Communications \C0B0\B3CC\CEE4\BBA4\B2C8\CF00\C774\C158, Soo-young JANG \C7A5\C218\C601 & Joo-yeon KANG \AC15\C8FC\C5F0 (hangul elements, letters & syllables)";
@ -363,47 +363,6 @@ lookup std_ccmp {
substitute \63128 \63128 by \63143;
substitute \723 \723 \723 by \63144;
substitute \723 \723 by \63143;
# UTC-00791 (Extension G)
# JP
substitute \1394 \40029 \1387 \29388 \1384 \20694 \1384 \1386 \1385 \16866 \42830 \1385 \37543 \44746 \1385 \16866 \42830 \11137 \17487 by \61854;
# KR
substitute \1394 \40029 \1387 \62576 \1384 \20694 \1384 \1386 \1385 \16866 \42830 \1385 \37543 \44746 \1385 \16866 \42830 \11137 \17487 by \61855;
# CN
substitute \1394 \40030 \1387 \29389 \1384 \20694 \1384 \1386 \1385 \16867 \42831 \1385 \37544 \44746 \1385 \16867 \42831 \11137 \17488 by \61856;
# TW
substitute \1394 \40031 \1387 \29390 \1384 \20694 \1384 \1386 \1385 \16867 \42831 \1385 \37544 \44746 \1385 \16867 \42831 \11137 \17488 by \61857;
# HK
substitute \1394 \40031 \1387 \29389 \1384 \20694 \1384 \1386 \1385 \16867 \42831 \1385 \37544 \44746 \1385 \16867 \42831 \11137 \17488 by \61857;
# UTC-01200 (Extension G)
# JP/KR
substitute \1384 \23011 \17745 by \61858;
# CN/TW/HK
substitute \1384 \23011 \17746 by \61858;
# UTC-01312 (Extension G)
# JP
substitute \1394 \40029 \1387 \29388 \1384 \20694 \1384 \1386 \1385 \16866 \42842 \1385 \37543 \45072 \1385 \16866 \42842 \11137 \17487 by \61859;
# KR
substitute \1394 \40029 \1387 \62576 \1384 \20694 \1384 \1386 \1385 \16866 \42842 \1385 \37543 \45072 \1385 \16866 \42842 \11137 \17487 by \61859;
# CN
substitute \1394 \40030 \1387 \29389 \1384 \20694 \1384 \1386 \1385 \16867 \42842 \1385 \37544 \45072 \1385 \16867 \42842 \11137 \17488 by \61859;
# TW
substitute \1394 \40031 \1387 \29390 \1384 \20694 \1384 \1386 \1385 \16867 \42842 \1385 \37544 \45072 \1385 \16867 \42842 \11137 \17488 by \61859;
# HK
substitute \1394 \40031 \1387 \29389 \1384 \20694 \1384 \1386 \1385 \16867 \42842 \1385 \37544 \45072 \1385 \16867 \42842 \11137 \17488 by \61859;
# UK-02960 (Extension G): Long IDS
# JP/KR
substitute \1387 \43442 \1386 \43442 \47443 \43442 \1384 \47443 \47443 by \61860;
# CN
substitute \1387 \43443 \1386 \43443 \47444 \43443 \1384 \47444 \47444 by \61861;
# TW
substitute \1387 \43444 \1386 \43444 \47445 \43444 \1384 \47445 \47445 by \61862;
# HK
substitute \1387 \43444 \1386 \43444 \47444 \43444 \1384 \47444 \47444 by \61863;
# UK-02960 (Extension G): Short IDS
# JP/KR/CN/HK
# substitute \1389 \8547 \47471 by \61860;
# TW
# substitute \1389 \8547 \47472 by \61862;
substitute \1447 \1449 by \1445;
substitute \1448 \1449 by \1446;
substitute \1461 \1546 by \61872;
@ -13931,7 +13890,6 @@ lookup cn2kr useExtension {
substitute \13891 by \13890;
substitute \13895 by \13894;
substitute \13897 by \13896;
substitute \13900 by \13899;
substitute \13902 by \13901;
substitute \13905 by \13904;
substitute \13907 by \13906;
@ -21579,6 +21537,7 @@ lookup cn2kr useExtension {
substitute \61830 by \18829;
substitute \61856 by \61855;
substitute \61861 by \61860;
substitute \61900 by \10989;
substitute \61907 by \12272;
substitute \61910 by \12850;
substitute \61913 by \13658;
@ -31145,6 +31104,7 @@ lookup cn2hk useExtension {
substitute \15734 by \15735;
substitute \15737 by \15739;
substitute \15741 by \15740;
substitute \15745 by \15744;
substitute \15749 by \15748;
substitute \15755 by \15756;
substitute \15760 by \15759;
@ -31168,6 +31128,7 @@ lookup cn2hk useExtension {
substitute \15910 by \15911;
substitute \15913 by \15914;
substitute \15917 by \15918;
substitute \15923 by \65530;
substitute \15925 by \15926;
substitute \15927 by \15928;
substitute \15933 by \15934;

17
fonts/ume/PROTON_NOTE.md Normal file
View File

@ -0,0 +1,17 @@
# UmeFont (version 670)
https://ja.osdn.net/projects/ume-font/
## Fonts
https://ja.osdn.net/projects/ume-font/downloads/22212/umefont_670.tar.xz/
- ume-tgo4.ttf: Ume Gothic
- ume-pgo4.ttf: Ume P Gothic
- ume-ugo4.ttf: Ume UI Gothic
## Why UmeFont?
UmeFont is metric-compatible fonts with MS Japanese fonts.
https://wiki.archlinux.org/title/Metric-compatible_fonts#Ume

79
fonts/ume/license.html Normal file
View File

@ -0,0 +1,79 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html" charset="utf-8">
</head>
<body>
<pre>
-------------------------------------------------------------------------------
梅フォントのライセンス (日本語 UTF-8) (UmeFont license (In Japanese UTF-8))
-------------------------------------------------------------------------------
本ライセンスは以下の梅フォントに共通のライセンスです。
* 梅ゴシック
* 梅ゴシックC4
* 梅ゴシックS4
* 梅ゴシックO5
* 梅ゴシックC5
* 梅ゴシックS5
* 梅Pゴシック
* 梅PゴシックC4
* 梅PゴシックS4
* 梅PゴシックO5
* 梅PゴシックC5
* 梅PゴシックS5
* 梅UIゴシック
* 梅UIゴシックO5
* 梅Hyゴシック
* 梅HyゴシックO5
* 梅明朝
* 梅明朝S3
* 梅P明朝
* 梅P明朝S3
これらのフォントはフリー(自由な)ソフトウエアです。
あらゆる改変の有無に関わらず、また商業的な利用であっても、自由にご利用、複製、
再配布することができますが、全て無保証とさせていただきます。
-------------------------------------------------------------------------------
UmeFont license (In English)
-------------------------------------------------------------------------------
This is common license of the UmeFont family. UmeFont family provides the
following fonts:
* Ume Gothic
* Ume Gothic C4
* Ume Gothic S4
* Ume Gothic O5
* Ume Gothic C5
* Ume Gothic S5
* Ume P Gothic
* Ume P Gothic C4
* Ume P Gothic S4
* Ume P Gothic O5
* Ume P Gothic C5
* Ume P Gothic S5
* Ume UI Gothic
* Ume UI Gothic O5
* Ume Hy Gothic
* Ume Hy Gothic O5
* Ume Mincho
* Ume Mincho S3
* Ume P Mincho
* Ume P Mincho S3
These fonts are free software.
Unlimited permission is granted to use, copy, and distribute it,
with or without modification, either commercially and noncommercially.
THESE FONTS ARE PROVIDED "AS IS" WITHOUT WARRANTY.
</pre>
</body>
</html>

BIN
fonts/ume/ume-pgo4.ttf Normal file

Binary file not shown.

BIN
fonts/ume/ume-tgo4.ttf Normal file

Binary file not shown.

BIN
fonts/ume/ume-ugo4.ttf Normal file

Binary file not shown.

View File

@ -708,7 +708,7 @@ impl ElementImpl for AudioConv {
static ELEMENT_METADATA: Lazy<gst::subclass::ElementMetadata> = Lazy::new(|| {
gst::subclass::ElementMetadata::new(
"Proton audio converter",
"Codec/Parser",
"Codec/Decoder/Audio",
"Converts audio for Proton",
"Andrew Eikum <aeikum@codeweavers.com>")
});

View File

@ -134,7 +134,7 @@ impl ElementImpl for AudioConvBin {
static ELEMENT_METADATA: Lazy<gst::subclass::ElementMetadata> = Lazy::new(|| {
gst::subclass::ElementMetadata::new(
"Proton audio converter with rate fixup",
"Codec/Parser",
"Codec/Decoder/Audio",
"Converts audio for Proton, fixing up samplerates",
"Andrew Eikum <aeikum@codeweavers.com>")
});
@ -155,7 +155,9 @@ impl ElementImpl for AudioConvBin {
gst::PadPresence::Always,
&caps).unwrap();
let caps = gst::Caps::builder("audio/x-raw").build();
let caps = gst::Caps::builder("audio/x-raw")
.field("format", "S16LE") /* opusdec always output S16LE */
.build();
let src_pad_template = gst::PadTemplate::new(
"src",
gst::PadDirection::Src,

17
proton
View File

@ -31,7 +31,7 @@ from random import randrange
#To enable debug logging, copy "user_settings.sample.py" to "user_settings.py"
#and edit it if needed.
CURRENT_PREFIX_VERSION="6.3-3"
CURRENT_PREFIX_VERSION="7.0-100"
PFX="Proton: "
ld_path_var = "LD_LIBRARY_PATH"
@ -58,7 +58,16 @@ def log(msg):
def file_is_wine_builtin_dll(path):
if os.path.islink(path):
contents = os.readlink(path)
if os.path.dirname(contents).endswith(('/lib/wine/i386-unix', '/lib/wine/i386-windows', '/lib64/wine/x86_64-unix', '/lib64/wine/x86_64-windows')):
if os.path.dirname(contents).endswith((
'/lib/wine',
'/lib64/wine',
'/lib/wine/fakedlls',
'/lib64/wine/fakedlls',
'/lib/wine/i386-unix',
'/lib/wine/i386-windows',
'/lib64/wine/x86_64-unix',
'/lib64/wine/x86_64-windows'
)):
# This may be a broken link to a dll in a removed Proton install
return True
if not os.path.exists(path):
@ -808,10 +817,10 @@ class CompatData:
prefix=self.prefix_dir, track_file=tracked_files, link_debug=True)
if use_wined3d:
dxvkfiles = ["dxvk_config"]
dxvkfiles = []
wined3dfiles = ["d3d11", "d3d10", "d3d10core", "d3d10_1", "d3d9"]
else:
dxvkfiles = ["dxvk_config", "d3d11", "d3d10core", "d3d9"]
dxvkfiles = ["d3d11", "d3d10core", "d3d9"]
wined3dfiles = []
if use_dxvk_dxgi:

@ -1 +1 @@
Subproject commit c0a3fa8adc589454a05ee2dd28430cae73b67890
Subproject commit 0f46a8a7d5bf2e43877de84dbd35f01674c4d681

View File

@ -18,11 +18,7 @@
#define COBJMACROS
#include "d3d11_4.h"
#ifdef VRCLIENT_HAVE_DXVK
#include "dxvk-interop.h"
#endif
#include "wined3d-interop.h"
#include "flatapi.h"
@ -53,10 +49,7 @@ static void *vrclient_lib;
static struct
{
ID3D11Device *d3d11_device;
IWineD3D11Device *wined3d_device;
#ifdef VRCLIENT_HAVE_DXVK
IDXGIVkInteropDevice *dxvk_device;
#endif
BOOL d3d11_explicit_handoff, handoff_called;
void *client_core_linux_side;
@ -553,16 +546,7 @@ void *ivrclientcore_get_generic_interface(void *(*cpp_func)(void *, const char *
static void destroy_compositor_data(void)
{
IWineD3D11Device *wined3d_device;
TRACE("Destroying compositor data.\n");
if ((wined3d_device = compositor_data.wined3d_device))
{
TRACE("Waiting for device %p\n", wined3d_device);
wined3d_device->lpVtbl->wait_idle(wined3d_device);
}
memset(&compositor_data, 0, sizeof(compositor_data));
}
@ -757,151 +741,6 @@ VRCompositorError ivrcompositor_008_submit(
return cpp_func(linux_side, eye, api, texture, bounds, flags);
}
static EVRCompositorError ivrcompositor_submit_wined3d(
EVRCompositorError (*cpp_func)(void *, EVREye, Texture_t *, VRTextureBounds_t *, EVRSubmitFlags),
void *linux_side, EVREye eye, Texture_t *texture, VRTextureBounds_t *bounds, EVRSubmitFlags flags,
unsigned int version, IWineD3D11Texture2D *wine_texture)
{
IWineD3D11Texture2D *depth_texture = NULL;
IUnknown *depth_texture_unk = NULL;
IWineD3D11Device *wined3d_device;
struct submit_data submit_data;
EVRCompositorError error = 0;
ID3D11Device *device;
BOOL async = FALSE;
HRESULT hr;
wine_texture->lpVtbl->GetDevice(wine_texture, &device);
if (compositor_data.d3d11_device != device)
{
if (compositor_data.d3d11_device)
FIXME("Previous submit was from different D3D11 device.\n");
compositor_data.d3d11_device = device;
if (SUCCEEDED(hr = device->lpVtbl->QueryInterface(device,
&IID_IWineD3D11Device, (void **)&wined3d_device)))
{
compositor_data.wined3d_device = wined3d_device;
wined3d_device->lpVtbl->Release(wined3d_device);
}
else
{
WARN("Failed to get device, hr %#x.\n", hr);
compositor_data.wined3d_device = NULL;
}
switch (version)
{
/* older versions */
default:
TRACE("Using synchronous mode.\n");
break;
case 21:
TRACE("Enabling explicit timing mode.\n");
async = TRUE;
cppIVRCompositor_IVRCompositor_021_SetExplicitTimingMode(linux_side,
VRCompositorTimingMode_Explicit_ApplicationPerformsPostPresentHandoff);
break;
case 22:
TRACE("Enabling explicit timing mode.\n");
async = TRUE;
cppIVRCompositor_IVRCompositor_022_SetExplicitTimingMode(linux_side,
VRCompositorTimingMode_Explicit_ApplicationPerformsPostPresentHandoff);
break;
}
}
device->lpVtbl->Release(device);
submit_data.linux_side = linux_side;
submit_data.submit = cpp_func;
submit_data.eye = eye;
submit_data.flags = flags;
/* Textures are upside-down in wined3d. */
submit_data.bounds = *bounds;
submit_data.bounds.vMin = bounds->vMax;
submit_data.bounds.vMax = bounds->vMin;
switch (flags & (Submit_TextureWithPose | Submit_TextureWithDepth))
{
case 0:
submit_data.texture = *texture;
break;
case Submit_TextureWithPose:
submit_data.texture_pose = *(VRTextureWithPose_t *)texture;
break;
case Submit_TextureWithDepth:
submit_data.texture_depth = *(VRTextureWithDepth_t *)texture;
depth_texture_unk = submit_data.texture_depth.depth.handle;
break;
case Submit_TextureWithPose | Submit_TextureWithDepth:
submit_data.texture_both = *(VRTextureWithPoseAndDepth_t *)texture;
depth_texture_unk = submit_data.texture_both.depth.handle;
break;
}
if (depth_texture_unk)
{
if (FAILED(hr = depth_texture_unk->lpVtbl->QueryInterface(depth_texture_unk,
&IID_IWineD3D11Texture2D, (void **)&depth_texture)))
WARN("Failed to get IWineD3D11Texture2D from depth texture.\n");
}
if (async)
{
wine_texture->lpVtbl->access_gl_texture(wine_texture,
d3d11_texture_callback, depth_texture, &submit_data, sizeof(submit_data));
}
else
{
unsigned int gl_texture, gl_depth_texture = 0;
void *linux_texture;
gl_texture = wine_texture->lpVtbl->get_gl_texture(wine_texture);
if (depth_texture)
{
gl_depth_texture = depth_texture->lpVtbl->get_gl_texture(depth_texture);
TRACE("Depth texture %u.\n", gl_depth_texture);
}
switch (flags & (Submit_TextureWithPose | Submit_TextureWithDepth))
{
case 0:
submit_data.texture.handle = (void *)(UINT_PTR)gl_texture;
submit_data.texture.eType = TextureType_OpenGL;
linux_texture = &submit_data.texture;
break;
case Submit_TextureWithPose:
submit_data.texture_pose.texture.handle = (void *)(UINT_PTR)gl_texture;
submit_data.texture_pose.texture.eType = TextureType_OpenGL;
linux_texture = &submit_data.texture_pose;
break;
case Submit_TextureWithDepth:
submit_data.texture_depth.texture.handle = (void *)(UINT_PTR)gl_texture;
submit_data.texture_depth.texture.eType = TextureType_OpenGL;
submit_data.texture_depth.depth.handle = (void *)(UINT_PTR)gl_depth_texture;
linux_texture = &submit_data.texture_depth;
break;
case Submit_TextureWithPose | Submit_TextureWithDepth:
submit_data.texture_both.texture.handle = (void *)(UINT_PTR)gl_texture;
submit_data.texture_both.texture.eType = TextureType_OpenGL;
submit_data.texture_both.depth.handle = (void *)(UINT_PTR)gl_depth_texture;
linux_texture = &submit_data.texture_both;
break;
}
error = cpp_func(linux_side, eye, linux_texture, &submit_data.bounds, flags);
}
if (depth_texture)
depth_texture->lpVtbl->Release(depth_texture);
wine_texture->lpVtbl->Release(wine_texture);
return error;
}
#ifdef VRCLIENT_HAVE_DXVK
static Texture_t vrclient_translate_texture_dxvk(Texture_t *texture, struct VRVulkanTextureData_t *vkdata,
IDXGIVkInteropSurface *dxvk_surface, IDXGIVkInteropDevice **p_dxvk_device, VkImageLayout *image_layout,
VkImageCreateInfo *image_info)
@ -1030,7 +869,6 @@ static EVRCompositorError ivrcompositor_submit_dxvk(
dxvk_surface->lpVtbl->Release(dxvk_surface);
return err;
}
#endif
static EVROverlayError ivroverlay_set_overlay_texture_vulkan(
EVROverlayError (*cpp_func)(void *, VROverlayHandle_t, Texture_t *),
@ -1146,21 +984,9 @@ EVROverlayError ivroverlay_set_overlay_texture(
texture_iface = texture->handle;
#ifdef VRCLIENT_HAVE_DXVK
{
IDXGIVkInteropSurface *dxvk_surface;
if (SUCCEEDED(hr = texture_iface->lpVtbl->QueryInterface(texture_iface, &IID_IDXGIVkInteropSurface, (void **)&dxvk_surface))) {
return ivroverlay_set_overlay_texture_dxvk(cpp_func, linux_side, overlayHandle, texture, version, dxvk_surface);
}
}
#endif
{
IWineD3D11Texture2D *wine_texture;
if (SUCCEEDED(hr = texture_iface->lpVtbl->QueryInterface(texture_iface,
&IID_IWineD3D11Texture2D, (void **)&wine_texture)))
{
FIXME("WineD3D not yet supported by IVROverlay::SetOverlayTexture\n");
}
IDXGIVkInteropSurface *dxvk_surface;
if (SUCCEEDED(hr = texture_iface->lpVtbl->QueryInterface(texture_iface, &IID_IDXGIVkInteropSurface, (void **)&dxvk_surface))) {
return ivroverlay_set_overlay_texture_dxvk(cpp_func, linux_side, overlayHandle, texture, version, dxvk_surface);
}
WARN("Invalid D3D11 texture %p.\n", texture);
@ -1199,7 +1025,7 @@ EVRCompositorError ivrcompositor_submit(
void *linux_side, EVREye eye, Texture_t *texture, VRTextureBounds_t *bounds, EVRSubmitFlags flags,
unsigned int version)
{
IWineD3D11Texture2D *wine_texture;
IDXGIVkInteropSurface *dxvk_surface;
IUnknown *texture_iface;
HRESULT hr;
@ -1221,25 +1047,12 @@ EVRCompositorError ivrcompositor_submit(
texture_iface = texture->handle;
if (SUCCEEDED(hr = texture_iface->lpVtbl->QueryInterface(texture_iface,
&IID_IWineD3D11Texture2D, (void **)&wine_texture)))
&IID_IDXGIVkInteropSurface, (void **)&dxvk_surface)))
{
return ivrcompositor_submit_wined3d(cpp_func, linux_side,
eye, texture, bounds, flags, version, wine_texture);
return ivrcompositor_submit_dxvk(cpp_func, linux_side,
eye, texture, bounds, flags, version, dxvk_surface);
}
#ifdef VRCLIENT_HAVE_DXVK
{
IDXGIVkInteropSurface *dxvk_surface;
if (SUCCEEDED(hr = texture_iface->lpVtbl->QueryInterface(texture_iface,
&IID_IDXGIVkInteropSurface, (void **)&dxvk_surface)))
{
return ivrcompositor_submit_dxvk(cpp_func, linux_side,
eye, texture, bounds, flags, version, dxvk_surface);
}
}
#endif
WARN("Invalid D3D11 texture %p.\n", texture);
return cpp_func(linux_side, eye, texture, bounds, flags);
}
@ -1294,7 +1107,6 @@ static EVRCompositorError ivrcompositor_set_skybox_override_d3d11(
texture_iface = texture->handle;
#ifdef VRCLIENT_HAVE_DXVK
if (SUCCEEDED(texture_iface->lpVtbl->QueryInterface(texture_iface,
&IID_IDXGIVkInteropSurface, (void **)&dxvk_surface)))
{
@ -1329,7 +1141,6 @@ static EVRCompositorError ivrcompositor_set_skybox_override_d3d11(
continue;
}
#endif
FIXME("Unsupported d3d11 texture %p, i %u.\n", texture, i);
return 0;
}
@ -1384,22 +1195,9 @@ void ivrcompositor_post_present_handoff(void (*cpp_func)(void *),
void *linux_side, unsigned int version)
{
struct post_present_handoff_data data;
IWineD3D11Device *wined3d_device;
TRACE("%p\n", linux_side);
if ((wined3d_device = compositor_data.wined3d_device))
{
TRACE("wined3d device %p\n", wined3d_device);
data.linux_side = linux_side;
data.post_present_handoff = cpp_func;
wined3d_device->lpVtbl->run_on_command_stream(wined3d_device,
d3d11_post_present_handoff_callback, &data, sizeof(data));
return;
}
#ifdef VRCLIENT_HAVE_DXVK
if (compositor_data.dxvk_device)
{
compositor_data.dxvk_device->lpVtbl->LockSubmissionQueue(compositor_data.dxvk_device);
@ -1414,15 +1212,12 @@ void ivrcompositor_post_present_handoff(void (*cpp_func)(void *),
compositor_data.d3d11_explicit_handoff = TRUE;
}
}
#endif
cpp_func(linux_side);
compositor_data.handoff_called = TRUE;
#ifdef VRCLIENT_HAVE_DXVK
if (compositor_data.dxvk_device)
compositor_data.dxvk_device->lpVtbl->ReleaseSubmissionQueue(compositor_data.dxvk_device);
#endif
}
struct explicit_timing_data
@ -1462,12 +1257,10 @@ EVRCompositorError ivrcompositor_wait_get_poses(
unsigned int version)
{
struct explicit_timing_data data;
IWineD3D11Device *wined3d_device;
EVRCompositorError r;
TRACE("%p, %p, %u, %p, %u\n", linux_side, render_poses, render_pose_count, game_poses, game_pose_count);
#ifdef VRCLIENT_HAVE_DXVK
if (compositor_data.dxvk_device)
{
compositor_data.dxvk_device->lpVtbl->LockSubmissionQueue(compositor_data.dxvk_device);
@ -1478,11 +1271,9 @@ EVRCompositorError ivrcompositor_wait_get_poses(
cppIVRCompositor_IVRCompositor_022_PostPresentHandoff(linux_side);
}
}
#endif
r = cpp_func(linux_side, render_poses, render_pose_count, game_poses, game_pose_count);
#ifdef VRCLIENT_HAVE_DXVK
if (compositor_data.dxvk_device)
{
if (compositor_data.d3d11_explicit_handoff)
@ -1490,27 +1281,6 @@ EVRCompositorError ivrcompositor_wait_get_poses(
compositor_data.dxvk_device->lpVtbl->ReleaseSubmissionQueue(compositor_data.dxvk_device);
}
#endif
if ((wined3d_device = compositor_data.wined3d_device))
{
TRACE("wined3d device %p.\n", wined3d_device);
/* We need to call IVRCompositor::SubmitExplicitTimingData() before the
* first flush of the frame.
*
* Sending IVRCompositor::SubmitExplicitTimingData() to the command
* stream immediately after IVRCompositor::WaitGetPoses() seems
* reasonable.
*/
if (version == 21 || version == 22)
{
data.linux_side = linux_side;
data.version = version;
wined3d_device->lpVtbl->run_on_command_stream(wined3d_device,
d3d11_explicit_timing_callback, &data, sizeof(data));
}
}
return r;
}

View File

@ -1,11 +1,6 @@
#include <stdint.h>
#include <linux/limits.h>
/* 32-bit Mac doesn't support Vulkan and thus DXVK */
#if !defined(__APPLE__) || defined(__x86_64__)
#define VRCLIENT_HAVE_DXVK
#endif
#if __cplusplus
extern "C" {
#endif
@ -55,7 +50,6 @@ void *create_LinuxMatchmakingServerListResponse(void *win);
#ifndef __cplusplus
typedef struct ID3D11Device ID3D11Device;
typedef struct IWineD3D11Device IWineD3D11Device;
typedef struct IDXGIVkInteropDevice IDXGIVkInteropDevice;
struct generic_interface

2
wine

@ -1 +1 @@
Subproject commit f0b3d09ad69ddfc27dbd850bd6b365da6683fa08
Subproject commit 988fbfbe6855fa7c9eb2d932ecadb88a4b5e7497