2017年12月31日 星期日

uefi os loader (0) - write uefi program without edk2

今天是 20171231, 寫篇文章紀錄一下 2017 的最後一天, 很久沒寫電腦技術文章, 我找到了寫 uefi bootloader 的火苗, 先這麼開始吧!

2018 倒數計時
開發 uefi os loader 很困難 (或者應該說是陌生, 知道了其實並沒那麼難), 和 legacy bios os loader 相比之下, 有以下的問題要解決:
  1. 在 uefi 環境, x86 cpu 處於何種模式
  2. 取得 memory map, 如何解讀 memroy map 的資訊
  3. 如何載入 os kernel (在不自己寫 sata 的驅動程式之下)
  4. 如何離開 uefi 環境
  5. 離開 uefi 環境, x86 cpu 處於何種模式
  6. 離開 uefi 環境之後, 如何秀字
  7. 如何跳到 os kernel 執行
這些問題有些和 uefi 相關, 有些是 loader 本身的相關知識, 好像真的比開發 legacy bios os loader 難了不只一點。

https://github.com/naoki9911/xv6_uefi/ https://github.com/naoki9911/edk2/tree/f6392fdaa72cf3f54d43a00b26a74ce0e1184027/xv6_bootloader

提供了一個完整 uefi loader 的程式碼, 可以參考, 這個 loader 做了我上面提到的那些事情, 最後載入 xv6 kernel。程式碼還算容易, 應該難不倒你, xv6_bootloader 使用的是 edk2, edk2 用法中文資訊比較少。

由於一直找不到第一手資料 (中文世界通常指英文資料), 只好看第 0 手資料, 很希望我寫的這系列可以被當成第一手資料。

x86 cpu 開機處於真實模式, 你好奇在 uefi 環境時, cpu 處於什麼模式嗎?

根據 UEFI_Spec_2_7.pdf 2.3.4, uefi 開機之後在呼叫 ExitBootServices() 之前, x64 cpu 處於以下模式:
2.3.4 x64 Platforms
All functions are called with the C language calling convention. See Section 2.3.4.2 for more detail.
During boot services time the processor is in the following execution mode:
• UniprocessorIn long mode, in 64-bit modePaging enabled128 KiB, or more, of available stack space
• The stack must be 16-byte aligned. Stack may be marked as non-executable in identity mapped page tables.
• CR0.EM must be zero
• CR0.TS must be zero• Direction flag in EFLAGs clear
• 4 KiB, or more, of available stack space
• The stack must be 16-byte aligned
以上是簡短摘錄, 詳細請參閱 2.3.4, cpu 已經進入 long mode, 使用 page, 一核心, 所以 gdt 已經被設定了, 在 qemu 中, 是以下的內容:
gdt: 47, addr: 07ED6F18
0: 0  0
8: CF9200  FFFF
10: CF9F00  FFFF
18: CF9300  FFFF
20: CF9A00  FFFF
28: 0  0
30: CF9300  FFFF
38: AF9A00  FFFF
40: 0  0
uefi 挑 0x38 為 cs selector。

UEFI_Spec_2_7.pdf 2.1.3 有大略提到 UEFI OS loader, 可參考一下知道個大概 (當然只看這節的內容是寫不出來 UEFI OS loader 的)。uefi os loader 先提到這; 再來介紹不使用 edk2 來開發 uefi 程式的方法。

uefi 程式一般使用 edk2, 要完成一個 uefi hello 程式, 得照其規定來開發, 但是 edk2 實在太麻煩了, 有沒有 gcc + makefile 就可以搞定的方法呢?

很幸運的, 答案是肯定的。

也許你聽過 gnu efi, 做的也是類似的事情, 一年之後我才知道, 本篇提到的作法就是參考 gnu efi

README.gnuefi 這份文件也部份提到一些 efi 的 runtime 細節, 補上一些我從 source code 看不出來的細節。

GNU-EFI includes:
  1. crt0-efi-x86_64.o: A CRT0 (C runtime initialization code) that provides an entry point that UEFI firmware will call when launching the application, which will in turn call the "efi_main" function that the developer writes.
  2. libgnuefi.a: A library containing a single function (_relocate) that is used by the CRT0.
  3. elf_x86_64_efi.lds: A linker script used to link UEFI applications.
  4. efi.h and other headers: Convenience headers that provide structures, typedefs, and constants improve readability when accessing the System Table and other UEFI resources.
  5. libefi.a: A library containing convenience functions like CRC computation, string length calculation, and easy text printing.
  6. efilib.h: Header for libefi.a.
要打造這環境很麻煩, 需要自己編譯 toolchain (好像已經不用這麼做了), 因為 uefi 執行檔格式是 pe, 在 linux 預設的 gcc, 只能造出 elf 執行檔, 這太繁瑣了, 我不是用這個方式。很單純就是用系統的 toolchain 即可。

只要以下的檔案, 就可以開發 uefi 程式。這篇文章說明的是 x86_64 的用法, x86 32bit mode 就不介紹了。
  • efi_api.h efi.h types.h - efi 相關的 struct, function 定義, 看起來是從 edk2 參考而來。
  • efi_main.c - 使用 efi_main 的程式進入點。
  • crt0_x86_64_efi.S - efi 程式的初始化程式碼。
  • efi.ld - linker script
  • makefile - gcc/ld 編譯/連結相關的參數。
只要有了這幾個檔案, 就可以用我熟悉的 gcc + makefile 來開發 uefi 程式。

grub2 也是用類似的方法

grub-core/kern/efi/mm.c
grub_efi_get_memory_map()
{
  ...
  b = grub_efi_system_table->boot_services;
  ...
}

一個就是 system table, 一個就是 boot service, 咦! 好像是廢話。

linux 也有類似的程式:
boot/compressed/eboot.c
#define BOOT_SERVICES(bits)                                             \
static void setup_boot_services##bits(struct efi_config *c)             \
{                                                                       \
        efi_system_table_##bits##_t *table;                             \
        efi_boot_services_##bits##_t *bt;                               \
                                                                        \
        table = (typeof(table))sys_table;                               \
                                                                        \
        c->text_output = table->con_out; 

先來看看 efi_main.c, 很簡單, 呼叫 efi_main 來完成一個 uefi 程式, 裡頭用到 efi_system_table 裡頭的 efi_simple_text_output_protocol 的 output_string function, 可以用他來輸出字串到螢幕。

output_string 需要接受一個 efi_simple_text_output_protocol 和 u16 的 c-style 字串, 這對於我在 linux 開發的人來說很不習慣, 在 linux 下, 以 utf8 為主, 印出英文字串時, 只要使用 u8 c-sytle 字串就可以, 不過 uefi 只提供這個, 也只能照辦。所以一個普通字串就需要 prefix L, 這是 efi_main.c L8 為什麼需要 prefix L 的原因。

這個部份相當於經典程式 hello world 的寫法。

efi_main.c
 1 #include "efi.h"
 2 #include "efi_api.h"
 3 
 4 static efi_guid_t gEfiSimpleFileSystemProtocolGuid = EFI_GUID(0x964E5B22, 0x6459, 0x11D2,  0x8E, 0x39, 0x00, 0xA0, 0xC9, 0x69, 0x72, 0x3B);
 5 
 6 efi_status_t efi_main(efi_handle_t image, struct efi_system_table *sys_table)
 7 {
 8   sys_table->con_out->output_string(sys_table->con_out, L"002 hello efi by gcc\n\r");
 9   return 0;
10 }

和經典程式 hello world 不同的是 (一般都被 c library 處理完畢, 程式員感覺不到他們的存在), 還需要初始化 uefi 的部份, crt0_x86_64_efi.S 就是在做這件事情。

這邊牽扯到 x64 的 2 種 function call convention, 參考《X86调用约定

注意到有 2 種不同的方式:
  1. 微软x64调用约定使用RCX, RDX, R8, R9这四个寄存器传递头四个整型或指针变量(从左到右)
  2. 此约定主要在Solaris,GNU/Linux,FreeBSD和其他非微软OS上使用。头六个整型参数放在寄存器RDI, RSI, RDX, RCX, R8和R9上。
很不幸這裡需要用到這兩種 function call convention, 所以雖然使用 gcc 在 linux 開發, 還是得搞懂 ms 的那套規則。因為 uefi 是使用 ms function call convention。雖然不太爽, 但也沒辦法。

_start 被 uefi bios 載入時, 使用 ms function call convention, crt0_x86_64_efi.S L17 的 %rcx 是 efi_handle_t (image), L18 是 efi_system_table (sys_table), 而 L25 call efi_main 時, 是使用 linux function call convention, 所以得把 %rdi 的值設定為 image, %rsi 設定為 sys_table。L17, 18, 22, 23 就是在做這些事情。之後進入了 efi_main 之後, 才可以正常使用 sys_table。

來看一下 efi api 的宣告, get_memory_map 是 uefi 提供 API, EFIAPI 是 #define EFIAPI __attribute__((ms_abi)), 代表要以 ms function call convention 來呼叫 uefi API。

efi_status_t (EFIAPI *get_memory_map)(efi_uintn_t *memory_map_size,
                                      struct efi_mem_desc *desc,
                                      efi_uintn_t *key,
                                      efi_uintn_t *desc_size,
                                      u32 *desc_version);
還沒完, 我們還需要 relocatable executable, L35 ~ L43 就是在做這件事情, 這邊很抱歉, 我不知道為什麼要這樣, 如果有人能告知我, 非常謝謝。

猜測是 pe 格式需要有 .reloc section, 這樣 uefi loader 才會去載入這個 uefi 執行檔。

ref: PE文件学习笔记 (四): 重定位表(Relocation Table)解析

[ 4] .reloc            PROGBITS         0000000000003000  00203000
       000000000000000a  0000000000000000   A       0     0     1

這時候最終的 elf 檔案就會有 .reloc section, 這樣 uefi 才會正常載入/執行這個 efi application。

而 elf 的 relocation 方式就用 elf 的 relocation 相關 section 來處理。最後還有一段 relocation 的程式碼, 這就是在做 elf relocation, 為了簡化, 我拿掉了, 這是在這個 uefi 程式被載入時, 會自己處理 .dynamic section 的內容, 標記為 DT_RELA, DT_RELASZ, DT_RELAENT 的 symbol, 不過我不知道怎麼造出這些 symbol, 所以就沒特別介紹這個, 這個範例程式沒處理 .dynamic section 的內容也不影響執行。list 1 為這個範例的 .dynamic section 內容。

我已經理解怎麼造出這些需要 relocation 的 symbol 了, 請參考: [code] 自己移動自己 - relocation

list 1. readelf -d my.elf
 1 descent@debian64:uefi_prog$ readelf -d my.elf
 2
 3 Dynamic section at offset 0x205000 contains 7 entries:
 4   Tag        Type                         Name/Value
 5  0x0000000000000004 (HASH)               0x0
 6  0x000000006ffffef5 (GNU_HASH)           0x8000
 7  0x0000000000000005 (STRTAB)             0x7000
 8  0x0000000000000006 (SYMTAB)             0x6000
 9  0x000000000000000a (STRSZ)              19 (bytes)
10  0x000000000000000b (SYMENT)             24 (bytes)
11  0x0000000000000000 (NULL)               0x0

crt0_x86_64_efi.S
 1 /*
 2  * crt0-efi-x86_64.S - x86_64 EFI startup code.
 3  * Copyright (C) 1999 Hewlett-Packard Co.
 4  * Contributed by David Mosberger <davidm@hpl.hp.com>.
 5  * Copyright (C) 2005 Intel Co.
 6  * Contributed by Fenghua Yu <fenghua.yu@intel.com>.
 7  *
 8  * All rights reserved.
 9  * SPDX-License-Identifier: BSD-3-Clause
10  */
11  .text
12  .align 4
13 
14  .globl _start
15 _start:
16  subq $8, %rsp
17  pushq %rcx
18  pushq %rdx
19 
20 0:
21 
22  popq %rsi
23  popq %rdi
24 
25  call efi_main
26  addq $8, %rsp
27 
28 .exit:
29  ret
30 
31  /*
32   * hand-craft a dummy .reloc section so EFI knows it's a relocatable
33   * executable:
34   */
35  .data
36 dummy: .long 0
37 
38 #define IMAGE_REL_ABSOLUTE 0
39  .section .reloc, "a"
40 label1:
41  .long dummy-label1    /* Page RVA */
42  .long 10     /* Block Size (2*4+2) */
43  .word (IMAGE_REL_ABSOLUTE << 12) +  0  /* reloc for dummy */

efi.ld 比較特別的事情算是 L7 的 .hash section, 這是給 dynamic section 用的, 而且一定要排在第一個, 詳請請參考 elf64 format 文件。神奇的是, 不需要指定 link 位址, 因為這個 uefi 程式要作到不管被載入到那個位址, 都可以正確執行, 這個 linker script 會從 0 開始計算位址。

README.gnuefi
.hash (and/or .gnu.hash)
        Collects the ELF .hash info (this section _must_ be the first
        section in order to build a shared object file; the section is
        not actually loaded or used at runtime).

efi.ld
 1 OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64")
 2 OUTPUT_ARCH(i386:x86-64)
 3 ENTRY(_start)
 4 SECTIONS
 5 {
 6  image_base = .;
 7  .hash : { *(.hash) }
 8  . = ALIGN(4096);
 9  .eh_frame : {
10   *(.eh_frame)
11  }
12  . = ALIGN(4096);
13  .text : {
14   *(.text)
15   *(.text.*)
16   *(.gnu.linkonce.t.*)
17  }
18  . = ALIGN(4096);
19  .reloc : {
20   *(.reloc)
21  }
22  . = ALIGN(4096);
23  .data : {
24   *(.rodata*)
25   *(.got.plt)
26   *(.got)
27   *(.data*)
28   *(.sdata)
29   *(.sbss)
30   *(.scommon)
31   *(.dynbss)
32   *(.bss)
33   *(COMMON)
34   *(.rel.local)
35   . = ALIGN(8);
36   *(SORT(.u_boot_list*));
37   . = ALIGN(8);
38   *(.dtb*);
39  }
40  . = ALIGN(4096);
41  .dynamic : { *(.dynamic) }
42  . = ALIGN(4096);
43  .rela : {
44   *(.rela.data*)
45   *(.rela.got)
46   *(.rela.stab)
47  }
48  . = ALIGN(4096);
49  .dynsym : { *(.dynsym) }
50  . = ALIGN(4096);
51  .dynstr : { *(.dynstr) }
52  . = ALIGN(4096);
53  .ignored.reloc : {
54   *(.rela.reloc)
55   *(.eh_frame)
56   *(.note.GNU-stack)
57  }
58  .comment 0 : { *(.comment) }
59 }

makefile 紀錄所需要的編譯/連結參數。關鍵是 L2 的 objcopy, 前面有提到, uefi 是 pe 格式, 但 linux 系統的 gcc 只會輸出 elf 格式, 怎麼辦呢? objcopy 會把 elf 轉成 pe 的格式, 仔細看 --target=efi-app-x86_64, 很神奇吧!

makefile L5 的 ld -shared 會插入 _DYNAMIC symbol, 和 crt0_x86_64_efi.S 以下程式碼有關:

list 2 lea + rip
lea image_base(%rip), %rdi
lea _DYNAMIC(%rip), %rsi

lea + rip + symbol 的這個用法很特別, 只存在 x86-64 模式下。
ref: 从机器码理解RIP 相对寻址

有點難懂, 直接用 objdump 來說明 lea + rip 指令。

list 3 lea + rip
1 0000000000002000 <_start>:
2     2000:       48 83 ec 08             sub    $0x8,%rsp
3     2004:       51                      push   %rcx
4     2005:       52                      push   %rdx
5     2006:       48 8d 3d f3 df ff ff    lea    -0x200d(%rip),%rdi       # 0 <image_base>
6     200d:       48 8d 35 ec 2f 00 00    lea    0x2fec(%rip),%rsi        # 5000 <_DYNAMIC>
7     2014:       59                      pop    %rcx

image_base 是 0, 而 list 3 L5 rip (L6 的位址) 是 200d + (-0x200d) 剛好是 0, 就是 image_base 的值。 list 3 L6 rip 是 0x2014 (L7 的位址) + (0x2fec) 剛好是 0x5000, 就是 _DYNAMIC 的值。 和一般 lea 的用法不太一樣。lea 在對 rip 暫存器和非 rip 暫存器似乎有 2 種不同的執行方式。
u.elf:     file format elf64-x86-64
Disassembly of section .hash:
0000000000000000 \<image_base\>:
   0:   03 00                   add    (%rax),%eax
   2:   00 00                   add    %al,(%rax)
   4:   07                      (bad)  
   5:   00 00                   add    %al,(%rax)
   7:   00 04 00                add    %al,(%rax,%rax,1)
   a:   00 00                   add    %al,(%rax)
   c:   02 00                   add    (%rax),%al
   e:   00 00                   add    %al,(%rax)
  10:   01 00                   add    %eax,(%rax)
  12:   00 00                   add    %al,(%rax)
  14:   00 00                   add    %al,(%rax)
  16:   00 00                   add    %al,(%rax)
  18:   05 00 00 00 00          add    $0x0,%eax

31 0x6999039       push   %rdx                                 
32 0x699903a       lea    -0x2041(%rip),%rcx        # 0x6997000 
33 0x6999041       lea    0x2fb8(%rip),%rdx        # 0x699c000 
34 0x6999048       callq  0x6999ced    
image_base 在被載入時才能得知其位址, 無法在 link timer 看出來, 所以我用了 gdb 來觀察真實的載入位址, L32 的 0x6997000 就是在計算 image_base 被載入的位址是 0x6997000, 透過 0x6999041 + (-0x2041) 計算得知。image_base 就是這個 uefi 程式的開頭位址, 為什麼要知道這個呢? 因為需要這個值來做 relocation, 而可以這麼做是因為這個 uefi 程式的 link 位址從 0 開始計算。

而在編譯成 shared object 時, lea 的這種語法只能搭配 rip, 是的, uefi 的編譯選項很類似 share object, 所以 uefi 程式其實是一個 share object, 然後 uefi shell 直接載入並執行這個 share object。

若 _start 被載入到 0x2000, list 3 L5 rdi 就是 0; 若 _start 被載入到 0x3000, list 3 L5 rdi 就是 0x1000 (0x300d + (-0x200d)), rdi 就是要紀錄這個 uefi (share object) 被載入到那一個位址, 後面的 _relocate function 就會用這個值來調整 relocateion 的相關修正。

而 _DYNAMIC 是 dynamic section 的位址, _relocate function 需要讀取這個 section 才知道需不需要做 relocation 的調整。

makefile
 1 efi_main.efi: efi_main.elf
 2  objcopy  -j .text -j .sdata -j .data -j .dynamic -j .dynsym -j .rel -j .rela -j .reloc --target=efi-app-x86_64 $< $@
 3 
 4 efi_main.elf: efi_main.o crt0_x86_64_efi.o
 5  ld -Bsymbolic -Bsymbolic-functions -shared --no-undefined -o $@ -T efi.ld $^
 6 
 7 efi_main.o: efi_main.c efi.h types.h efi_api.h
 8  gcc -nostdinc -I. -D__KERNEL__ -D__UBOOT__ -Wall -Wstrict-prototypes -Wno-format-security -fno-builtin -ffreestanding -fshort-wchar -Os -fno-stack-protector -fno-delete-null-pointer-checks -g -fstack-usage -Wno-format-nonliteral -Werror=date-time -fno-strict-aliasing -fomit-frame-pointer -fno-toplevel-reorder -fno-dwarf2-cfi-asm -D__I386__ -ffunction-sections -fvisibility=hidden -pipe -fpic -fshort-wchar -c $<
 9 
10 crt0_x86_64_efi.o: crt0_x86_64_efi.S
11  gcc -nostdinc  -D__UBOOT__ -D__ASSEMBLY__ -g -fno-strict-aliasing -fomit-frame-pointer -fno-toplevel-reorder -fno-dwarf2-cfi-asm -D__I386__ -ffunction-sections -fvisibility=hidden -pipe -fpic -fshort-wchar   -c crt0_x86_64_efi.S
12 
13 clean:
14  rm -rf *.o *.efi *.elf

makefile L5 -shared, L8/11 -fpic 是重點, 一定要這 2 個 option, 編譯出來的程式才能正常被 uefi 載入/執行。-fpic 表示我們要造出和位址無關的程式碼, 這觀念不難, 但平常我們不太容易練習到, 沾上邊的有 .so, 不過大部分程式員都是寫應用程式, 我認為很少人會去寫動態函式庫 (.so), 而且也不太會注意其和「位址無關」到底是什麼意思? 所以一個 uefi 執行檔其實是一個 share object, uefi loader 載入/執行的其實是 .so, 而不是一個真正的執行檔, 真是神奇。

字面上的解釋, 就是無論載入到 0x100, 0x200, 這個 efi application 都要正常執行。基本上平常的開發環境, 很難體會這點。

你需要寫一個 loader 和一個「與位址無關的程式」, 然後用這個 loader 去載入他才會有深刻的印象。

扯太多了, 總之, 這樣就可以靠 gcc + makefile 完成以 efi_main 為進入點的 uefi application。

在 qemu 上執行是沒有問題的
 1 UEFI Interactive Shell v2.1
 2 EDK II
 3 UEFI v2.60 (EDK II, 0x00010000)
 4 Mapping table
 5       FS0: Alias(s):FP0a:;BLK0:
 6           PciRoot(0x0)/Pci(0x1,0x0)/Floppy(0x0)
 7      BLK2: Alias(s):
 8           PciRoot(0x0)/Pci(0x1,0x1)/Ata(0x0)
 9      BLK1: Alias(s):
10           PciRoot(0x0)/Pci(0x1,0x0)/Floppy(0x1)
11 Press ESC in 2 seconds to skip startup.nsh or any other key to continue.
12 Shell> fs0:
13 FS0:\> efi_main.efi
14 002 hello efi by gcc

當然在真實機器上也是可以正常執行的。

在真實機器上測試

接下來我便要用這樣的開發方式, 開發 uefi os loader。

ref: uefi document:
  • UEFI_Spec_2_7.pdf
  • PI_Spec_1_6.pdf
ref: linux-5.1.14/arch/x86/boot/compressed/eboot.c
efi_main()
{
        setup_graphics(boot_params);
        setup_efi_pci(boot_params);
        setup_quirks(boot_params);
}

2017年12月22日 星期五

[娃店] doll point -「ボークス ドールポイント秋葉原 / ホビースクエア秋葉原」

20171125 從上野搭乘 JR 上野車站的山手線來到秋葉原, 這還是我第一次來這裡。秋葉原有電器、動漫、公仔很多吸引宅宅的東西, 台灣的 3C 量販店也取了類似的名字, 五鐵秋葉原之類的, 當然和日本正宗的秋葉原是完全不能比的。

我的目標是 doll point 101-0021 东京都千代田区外神田 1-15-16 广播会馆 8层 (101-0021 Radio Kaikan 8F, 1-15-16 Sotokanda, Chiyoda-ku, Tokyo), volks 娃店。我用一樣的方法, 參考著 google map, 來到了地圖上附近的點, 但怎麼找也找不到 doll point 在哪裡? 奇怪, 明明就很接近了, 怎麼都沒看到類似的店名。

先隨便找一棟樓進去逛逛吧! 這棟有 6 個樓層以上吧! 我在裡頭轉了好幾層, 看到許多動漫公仔, 很漂亮, 但我心不在焉, 我只想找到 doll point 娃店, 快速的轉了幾層樓之後, 我快速的下樓出門, 這裡沒有 doll point。

在秋葉原找了許久, 始終找不到 doll point 在哪裡, 最後詢問 line 群組的娃友之後, 才正確找到 doll point, 感謝他們。

原來店名不是寫 doll point, 而是「ボークス ドールポイント秋葉原 / ホビースクエア秋葉原」, 不熟悉日文的我, 難怪找不到了。最後我在 line 群組上發問, 拍了附近的照片, 好心的娃友提供了正確的情報, 告知我正確的大樓以及樓層, 終於讓我正確找到 doll point 娃店了。

fig 1. 左邊大樓 8 樓是 doll point 的店址

這棟大樓在我尋找的過程中有進去過, 只是我不知道 doll point 就在 8 樓, 因為裡頭的告示牌是寫日文「ボークス ドールポイント秋葉原 / ホビースクエア秋葉原」, 而「ボークス ドールポイント秋葉原 / ホビースクエア秋葉原」就是 ボークス (發音為 bo ku su) 為 Volks 之意, ドールポイント (發音為 do ru po i n to) doll point 的日文店名, 這才讓我錯過了; 而 ホビー スクエア (ho bi su ku e a) 為 Hobby Square 之意。

Hobby Square 則在同樓層的另外一區, 是一些模型的東西, 我對這些沒有研究, 匆匆一瞥之後就過去了。

fig 2. 8F 就是 doll point 娃店, 7F 是 azone 娃店
到 8 樓一出手扶梯, 環顧四顧, 尋找 doll point 在哪裡, 沒花什麼心力就找到了, 因為很容易就看到 volks 的 DD 娃, 往那裡走去一定沒問題, 經過一些折騰, 終於抵達 doll point。裡頭顧客不算多, 和我想像的人潮有點差距, 隨意晃晃就看到最近開賣的幾隻限定娃, 心中非常興奮, 真的來到日本的娃店朝聖了, 雖然玩娃之後, 一直就很想到日本娃店或是日本娃展參觀, 但沒想到真能達成這個目標, 真是開心。

我從來沒怎麼看過實體的限量娃, 通常只從網路圖片見過, 這次一口氣看了 10 多隻的限量娃吧! 雖然我對她們沒怎麼有愛, 但在店家的用心擺放、燈光的照映之下, 看起來真的很美, 果然看實體的就是不一樣。

這類的展示多少會勾起購買的欲望, 台灣的娃店很少有這樣的能力展示這些限量娃, 畢竟不是 volks 官方的娃店, 如果有這些娃, 也都是店長或是娃友自己的收藏。

而最近開始預定的
  • DD ルーラー/ジャンヌ ダルク【ご予約内金】
  • DS セイバー/アルトリア ペンドラゴン【ご予約内金】
當然也有展示在店裡頭, 放在正中央最顯眼的位置。我一開始對這 2 隻限定娃並沒特別關注, 沒有特別喜歡這 2 個角色, 不過在店裡頭的展示真的很難不注意到她們兩位, 非常多的顧客都會在這裡拍照, 就知道這 2 隻展示娃有多麼吸睛了, 左邊展示的則是 DD-f 新骨架。

帥氣的姿勢再加上燈光的照映之下, Saber 和 Ruler 展現出磅礡的氣勢, 會產生讓人想馬上去櫃台訂購的衝動, 不過價錢加上我真的沒愛, 還是看看展示品過過癮就好。

這裡有些顧客拿著他們訂購的娃, 當場在這裡開箱, 畢竟要比對裡頭的配件有沒有缺少、有沒有瑕疵, 當場換貨處理是比較方便的, 我們海外的就沒這麼容易了, 得折騰好一陣子, 才能拿到訂購的娃。

除了展示娃外, 當然還有許多的配件, 衣服、眼睛、襪子 ... 還有台灣娃店最缺乏的娃體零件, 台灣娃店比較弱勢的一點便是娃體零件, 畢竟不是日本 volks 店家, 除了完整度不夠之外, 價格也實在令人吃不消, 不急著購買的娃友, 建議到日本娃店參訪時, 再順便一次購入。我發現大量採購娃體零件的顧客, 幾乎都是說中文的。

娃體零件真的很齊全, 一體身、各種大小的胸部、所有頭型、所有手勢、骨架、手臂、腳、腳底板通通都買得到, 而且 3 種膚色通通都有, doll point 還多了褐色限定版, 只有在秋葉原的 doll point 才買得到, 愛心手也是秋葉原限定, 日本人很愛搞哪裡哪裡的限定, 我實在想不出這策略真的有比較好嗎? 難道在每個地方多賣一點愛心手, 多賺一些不好嗎?



除了娃娃相關配件, 還有一些書籍, 特別是 volks news, 這是介紹 volks 又出了什麼新款的限定娃, 要你趕快去買的意思, volks 真會做生意, 連用來宣傳自家新產品的東西也能拿來賣錢呢! 台灣有的娃店一樣會販售這個, 只是售價一樣不便宜, 不怪他們, 因為就算自己從 volks 官網買回來, 一樣不便宜, 娃店還要賺一點, 售價自然不好看。

volk news
我趁著這次來到 doll point, 趕緊掃了幾本的 volks news, 我很喜歡書中介紹的圖片, 買不起的限定娃, 看看書中照片過過癮也好。

好了, 欣賞完展示的娃之後, 應該要來採購我所需要的東西了, 本來打算把所有的頭, 所有的手型一次買齊, 不過後來覺得沒必要怎麼急, 我還會再來的, 先買覺得需要的東西就好, 我買了 8, 9 號頭, 4 種手勢, 而 doll point 限定的愛心手這次沒有買, 愛心手雖然特別, 但我實在覺得不是怎麼實用的手, 不太可能長時間換上愛心手, 姿勢太單調了。也許下次再來的時候在購入吧! (真的在下次來的時候, 把所有手型都蒐集完畢)

服裝有看到深海少女、小紅帽套裝, 不過我對這幾套沒有興趣, 看過就好。衣服方面對賽巴的運動服有興趣, 不過在猶豫了很久之後, 我還是放下了, 真的沒有那麼喜歡, 在仔細逛完了整個店之後, 選擇了一件高中大衣外套, 衣服好像不是 volks 的強項, 推出的服裝系列中, 幾乎沒有能吸引我的, 反倒是限量娃的官服, 我還比較有興趣, 但我不想為了官服就買整隻娃, 在二手市場尋找, 看看有無娃友願意釋出。

日本人很愛搞限定品, doll point 的限定品還有一隻褐色膚色的娃, 我不太喜歡暗色膚色的顏色, 似乎不太好搭衣服, smart doll 有這種顏色膚色的娃, 好像是稱作「日燒肌」, 這個顏色似乎更黑, 我不偏愛這種顏色的膚色。

這裡自然也展示了褐色肌膚的 DD 娃, 倒也蠻好看的, 一身白, 和褐色身體有這極大的反差。

doll point 限定的褐色膚色娃
由於我對所有的身體零件並不熟悉, 這裡剛好有所有的零件, 我便仔細的查看了一遍, 終於搞清楚所有的零件是怎麼回事, 身體零件總共分成哪些部份; 除了個部份的零件之外, 當然也有整體的娃體, 還有部份的基本娃。我偏愛普通肌膚的顏色, 所以買的都是普肌。

頭髮部份則沒看到什麼喜歡的髮型, 所以一頂都沒買。

doll point 可以退稅, 而七樓的 azone 娃店則沒有退稅服務, 娃友給了我一句日文「税金は払い戻しができますか」給店員看, 再秀出我的護照, 他們就會幫我退稅了。最後付了 52500 日圓。

滿滿的一籃, 總共 52500 日圓
在我結帳的時候, 人潮已經比我剛來的時候要多了, 店家生意似乎也不錯, 結帳還得排隊。

店裡頭提供幾個可以供拍照的場景, 可以拿出自己的 volks 娃, 到這些地方拍照, 我沒有帶娃過來日本, 因為覺得麻煩, 行李空間不是很大, 不想挪出空間擺娃, 有機會在帶來好了, 這次拍拍空場景過過乾癮。

在娃體本身的豐富性, 台灣的娃店自然無法和其比較, 但是在其他配件方面, 台灣的娃店普遍比較豐富, 服飾、鞋子、其他首飾配件、包包算是比較多元, 而店長們也都會擺出自己的娃娃來展示, 不見得會輸給 volks 官方的限定娃。經營娃店真的不容易, 能有娃店可以逛真的是很不錯的享受, 一旦沒了實體店, 就少了線下的實體交流活動。

秋葉原的魔力果然很大, 光是逛 doll point 這一家店, 就已經耗去我大半天的時間, 結完帳時, 已經是日本時間 14:00 左右, 肚子已經餓了, 我趕緊離開這棟大樓, 去找吃的地方, 餵飽一下我那飢腸轆轆的肚子。

順便介紹「ボークス ドールポイント秋葉原 / ホビースクエア秋葉原」所提供的活動:

DDドリームチョイス - DD dream choice 就是「ドールポイント秋葉原」提供的自組娃活動, 可以挑選想要頭型, DC-h 系列的頭型可以挑選, 皮膚顏色有月份限定:

~スキンカラーを選べる期間~
4月~9月:ノーマル肌、褐色肌
10月~3月:ノーマル肌、セミホワイト肌

想要褐色肌就 4 ~ 9 月來試試看吧!

d'coord 也很類似 DD dream choice, 但我還不是很清楚和 DD dream choice 的不同之處。

可參考以下影片介紹:




20180409 我第二次來到ドールポイント秋葉原, 這次來蒐集剩下的手型, 包裝盒上的スキンカラー (skin color) 是膚色的意思, セミホワイト是半白的意思, ホワイト是白的意思。

花了 41000 日圓, 這次我用信用卡結帳, 不過自己豬頭選了台幣付款, 11768, 0.287 的匯率, 這時的匯率是 0.27, 記得選日幣付款才不會花了大錢。

DDII-H-011號-標準手型-普肌
DDII-H-01-B1號-標準手型-普肌(大手)
DDII-H-022號-勝利手型-普肌
DDII-H-02B2號-勝利手型-普肌(大手)
DDII-H-033號-指向手型-普肌
DDII-H-04B4號-巴掌手型-普肌(大手)
DDII-H-055號-握拳手型-普肌
DDII-H-05B5號-握拳手型-普肌(大手)
DDII-H-055號-握拳手型-普肌
DDII-H-05B5號-握拳手型-普肌(大手)
DDII-H-066號-持物手型-普肌
DDII-H-06B6號-持物手型-普肌(大手)
DDII-H-077號-輕握手型-普肌
DDII-H-077號-輕握手型-普肌
DDII-H-088號-細持物手型-普肌
DDII-H-08B8號-細持物手型-普肌(大手)
DDII-H-099號-Kirarin手型-普肌
DDII-H-099號-Kirarin手型-普肌



20180626 我第三次來到ドールポイント秋葉原, 20:00 關門, 我到的時候已經是 19:40, 只剩下 20 分鐘可以逛, 時間太趕了, 沒能好好的把店裡逛過一次。

匆忙的挑了 3 項物品之後, 也到了關門時間。

ref:
【心得】秋葉原Doll購物指南
VOLKS friend Shop list (全世界)
日本境內

2017年12月15日 星期五

[自助日本行] - 20171124 上野 - 特別的膠囊旅館 (1/4)

日期: 20171124
地點: 台灣 - 上野
[準備]

距離前一次出國已經過了好幾年, 護照都過期了, 這次要挑戰一個人日本自助旅行, 事前找了許多資料, 有網路的有書籍的, 但還是很模糊, 不確定自己是不是能成功。fig 1 的書籍在 jr 交通票券寫得很詳細, 只有 JR, 其他鐵路資訊並不詳細, 可是住宿定房, 箱根的資訊都不足, 箱根的交通資訊還是錯誤的, 讓我誤以為從小田原車站就要開始搭空中纜車了。而 2017 出版的書籍, 在成田空港的資訊竟然是寫只有 2 個航廈 (成田Narita機場第三航廈(第3ターミナル)於2015/4/8正式啟用), 後來我才知道這是澳門的作者寫的書, 硬改成台灣的版本, 這種資訊應該要特別註明, 我有一種「上當」的感覺。

fig 1 去日本自助旅行, 這本書讓我有上當的感覺,
澳門作者寫的書, 但卻改成看起來像是台灣為主的旅遊書
設定目標:
  • 從成田空港抵達上野。
  • 搭乘 JR 山手線去各個景點逛
  • 搭火車去箱根
這已經將第一次自助日本的困難度降到最低。山手線是環狀鐵路, 不會迷路的。搭火車去箱根如果失敗了就在新宿逛。但是成田空港到上野這部份一定要學會。

我很喜歡日本的鐵路系統, 台灣沒有這樣的複雜鐵路, 所以日本是最近可以感受複雜交通系統的國家, 中國也有複雜的鐵路系統, 歐洲也是, 我下次的目標想把歐洲的鐵路系統搞定。所以這次的旅行目的不是看風景、不是吃美食、也不是購物, 是要熟悉日本的鐵路系統。在不會日文的情況之下, 完成購票/搭車到目的地, 一定很有成就感。

住宿方面從 agoda 訂了 Sauna 膠囊旅館, 我對這種旅館不陌生, 在台北已經住過, 我一個人, 沒什麼好顧慮的, 便宜就好。3 天花費 1911 台幣。本來打算用 jalan, 聽說可以訂到特殊/便宜的旅館, 但是查了很多資料, 還是不會用, 只好放棄, 敗退在其日文界面。

航空公司選了香草航空, 20171124 ~ 20171127, 這是我找到最便宜的了, 來回 9923 台幣, 買的是繽紛香草, 似乎也沒有特別便宜。

上網選擇了台灣大哥大的 4g 上網卡, 4 天 399nt, 吃到飽, 非常適合我。

[台灣 - 日本成田空港]

20171124 出發, 前往香草航空的櫃台, 已經有許多人在這裡等著報到。我提早一小時到, 看起來時間還蠻充裕, 等了一陣不算短的時間之後, 終於輪到我了, 把印出的單子給服務人員, 再托運行李箱, 航空公司的手續完成, 接著是出境/檢查行李等手續。這裡也會耗掉一點時間, 早點來辦理這些手續, 是個不錯的選擇, 終於忙完了, 我可以好好的坐在椅子上, 吃著我那個麵包。捷運不能吃東西還真有點不方便, 得到這個時間點才有空吃。



登機時間到了, 空姐會先說明, 請幾號座位的人先登機, 我是 10A, 最後才登機。旁邊兩個座位沒有人, 我有了空廣的座位空間; 而 10A 這裡是機翼的座位, 難怪不討喜, 下次我要避開這個位置。大約 3 小時之後, 準備降落, 不久便抵達成田空港, 一出機門, 寒意迎面撲來, 還真的有點冷, 我有備而來, 外套可是 gore-tex 等級; 再來便是入關、拿行李的手續, 海關人員問我來幹嘛, 還好聽得懂, 照實說:「travel, 4days.」便入關了。

[日本成田空港 - 京成上野車站]

  

再來便是困難的開始, 我本來打算搭乘 sky access 而不是 skyliner, sky access 和 skyliner 是在同一條鐵軌上, 在第二航廈, 而香草是在第三航廈, 第三航廈沒有 suica 的儲值機器, 得到第二航廈, 沿著指示牌走路到第二航廈, 這是一段尷尬的距離, 不長也不短, 走起來也是會累的, 十幾分鐘後, 我抵達成田空港第二航廈, 沿著鐵道標誌, 來到了 skyliner 售票處。

搭乘 skyliner 不算難, 所以我想挑戰搭乘 sky access, 看到了 sucica 的儲值機器, 第一次用, 不難, 成功的儲值 2000 日圓, 原來裡頭只剩下一元日圓了。在售票處看了好久, 怎麼都沒有發往上野 sky access 的列車, 只有往羽田空港的, 我用著破英文問了櫃台小姐, 想問下一班往上野的 sky access 列車, 不知道她是不是有聽懂我的意思, 直接給我這時段沒有發往上野 sky access 列車的答案, 無奈, 我還是買了 skyliner 的車票。早知道這樣, 我在香草航空上就直接買了, 還便宜些 (2200 日圓), 不過必須要當天搭乘, 不能在隔天之後的日子搭乘。

期間有一個家族來問我鐵路的搭乘問題, 他們拿著 suica 就要來搭乘, 我跟他們解釋, skyliner 是全車指定席, 也就是我們說的劃位, 要先去買票 (我不確定有沒有售票機可以購票), 票上會有車次時間以及座位, 和 JR 不同的是, 並沒有特別需要什麼特急券 + 指定席的票, 就只有一張票, 由於鐵路公司的不同, 買票的方式也有點不同, 這是其複雜之其一。而 suica 只能搭乘 sky access, 但目前發車是往羽田空港, 不是往上野, 最後他們一家人改買 skyliner 車票。沒想要我自己也不是那麼清楚, 卻也能幫到別人, 太開心了。

買到的 skyliner 票券是 13:42, 停日暮里駅、上野兩站, 14:23 到上野。skyliner 是子彈型列車, 看起來很漂亮, 我找到第四號車的月台, 在那等車。期間遇到在這工作的台灣人, 向他問了一些乘車資訊, 確認我沒有搞錯。

skyliner 來了, 帶著興奮的心情上車了, 這是我來到日本所搭乘的第一台火車, 往後幾天我還會陸續搭乘不同的火車, 而第一次, 總是令人新鮮、興奮, 上車後將行李箱放入大型物品置物區, 就到自己的位置坐下了, 這時候拿出我第二個麵包, 在座位吃了起來, 算算時間, 也應該餓了。

啃完麵包之後, 該來設定網路了, 現在出國旅行, 網路已經不像之前那樣昂貴以及不方便使用, 相反的, 我們外國人很依賴使用網路來查詢資料。先來更換 sim card, sharp z2 的 sim card 需要一根針來把 sim card 頂出來, 這是我覺得不方便之處, 這支針我還特別放置在行李箱托運, 所以得拿到托運的行李之後, 才能更換 sim card。再來是撥個號碼開通, 我撥打 886935120437 之後, 嗯...怎麼沒反應, 撥不上, 改撥 935120437 之後, 是撥通了, 不過卻是日文語音, 聽不懂, 心中開始著急了, 不會吧! 網路搞不定我就慘了, 連旅館都去不成, 這是我思慮不周到之處, 旅館地圖應該要印出來, 不要依賴網路。最後才知道要撥 +886935120437, 那個 + 也要一起打進去電話號碼的數字, 總算開通 4g 網路, 但是, 咦 ... 怎麼還是沒有上網的圖示, 又花了一些時間, 總算知道要開啟漫遊服務才行, 到這裡總算才正式搞定 4g 網路, 也安心了不少, 可以悠閒的看一下窗外的風景。

忽然間, 列車似乎要停靠了, 原來我不知不覺已經快到「日暮里」車站了, 這表示「上野」也快到了, 果然不久之後, 我抵達「京成上野」車站了。

下車後, 我不急著離開月台, 看著旁邊停靠的列車, 是「京成本線」呢! 這是京成電鐵另外一條可以從成田空港到上野的火車, 之前有研究過, 但因為實在太慢了, 我不考慮搭這台。環顧整個月台的環境之後, 差不多都觀察完畢, 我提著行李出站了。

一樣, 出站之後也不急著離開「京成上野」車站, 我在裡頭繞阿繞, 觀察整個車站的情形, 裡頭很多告示牌, 那條線路該怎麼走, 我注意到 JR 線, 這是明天預計要搭乘的電鐵, 心頭記下之後, 準備找我住宿的旅館, 可惜我出站後不知道該往哪邊前進, 又轉入車站, 詢問站務人員, 他給了我正確的方向之後, 我便沿著該方向前進。

[找尋住宿飯店 - Capsule Hotel Dandy (サウナ カプセル ダンディ) 膠囊旅館]

我從 agoda 看到的旅館名稱是 Sauna and Capsule Hotel Dandy, 而我看著 google map 上的定位資料, 奇怪, 應該在這附近, 但是怎麼都沒看到 Sauna and Capsule Hotel Dandy 字樣的招牌, 我在附近繞了好幾圈, 還是找不到招牌, 最後跑到電玩店去問店員, 她一看就指著旁邊門外的電梯, 向我示意從那個電梯上去就是了, 我很懷疑的坐上六樓, 還真的有個櫃台, 排隊輪到我之後, 把 agoda 的訂購單給了櫃台人員, 我還向她確認「就是這裡嗎?」得到肯定的答案。

難怪找不到, 人家招牌是用片假名寫的, 我用英文找, 當然找不到。Sauna and Capsule Hotel Dandy 片假名是「サウナ カプセル ダンディ」, 要不然其實從京成上野站到這裡走路大概 5 分鐘, 很近的。

「サウナ」的意思為:
請問日文的”サウナ”是啥意思阿

在櫃台辦理好 checkin 之後, 看了旅館的規定事項之後, 就會得到一把鑰匙, 是置物櫃的鑰匙, 不過置物櫃非常的小, 如果你的個人背包太大的話, 可能放不下, 至於行李箱則是寄放在櫃台後面的倉庫, 每次要拿的時候, 都要請櫃台人員幫忙, 非常不方便。

第二把鑰匙則是鞋櫃的鑰匙, 在這整層樓 (3-8 樓) 都是脫鞋的狀態, 自己的外出鞋統一放在這些鞋櫃中, 出門才穿上。

6 樓是 check-in 櫃台, 旁邊就是餐廳, 懶的出去吃的話可以在這裡用餐。7 樓是大澡堂, 還有收費的按摩服務, 我的房間在 5 樓, 來看看膠囊旅館的房間長什麼樣子。



↓ 從京成上野車站 - Sauna and Capsule Hotel Dandy (サウナ カプセル ダンディ) 膠囊旅館的路線圖


我覺得我好像活在駭客任務的「母體」當中。真不幸, 我的房間 ... 阿! 是床位, 在上層, 當過兵的都知道, 上層很不方便, 我希望可以在下層, 但這就是人生。

好累阿! 爬上去先休息一下吧, 完全不想出去溜搭溜搭, 先向家人報平安, 有個人還擔心以為我會在日本搞丟, 自助旅行是不簡單, 但是更難的寫程式我都會了, 怎麼可能搞不定自助旅行, 旅行還會比寫程式更難嗎?



到床舖上躺下休息時, 大概是日本時間 15:30, 一放鬆下來, 疲倦感開始來襲了, 我慵懶的躺著, 心頭想著, 我突破第一大關了, 明天的秋葉原是第二個關卡, 先躺一下, 什麼都不想, 就這樣。

本來打算去東京車站長見識的, 但真的不想出門, 有精神點之後, 來去大澡堂洗澡好了。拿好換洗衣服, 往 7 樓走去, 經過按摩阿姨們之後, 就到澡堂了。這間膠囊旅館只收男客人, 因為大澡堂是那種脫光光大家一起比大小的那種, 從當兵後就沒在這樣的體驗了。我嬌羞的脫下褲子, 進去澡堂和日本人比大小了。

裡頭有淋浴洗澡的蓮蓬頭, 有 2 池人工溫泉, 一池在戶外, 可以看見天空的, 但是在上野的天空看不到星星, 一池冰水池, 還有一個烤箱, 烤箱還有電視。置物櫃有放一套浴衣和毛巾, 不過第一天我還不知道有這些東西, 拿著我自己的毛巾, 進去了, 可能時間早了點, 沒有多少人, 先沖個身體, 泡個人工溫泉, 過癮阿!



我在熱水池和冷水池之間切換, 而戶外的那個溫泉池我遲遲不敢過去, 因為我感冒了, 不想去戶外吹風, 而發現那個烤箱之後, 我就跑進去取暖了, 烤箱裡頭竟然有一台電視, 電視播放著我看不懂的日文節目, 真厲害, 竟然可以將電視搬到烤箱裡頭。如此好幾個循環之後, 突然覺得身體好像舒服多了, 大概是把汗都逼出來的緣故吧! 覺得夠本之後, 我便老實地跑去洗澡了, 坐在小板凳上, 拿起蓮蓬頭, 熱水痛快的澆下, 唰唰唰 ... 好過癮, 現在我像個英雄, 不像狗熊。

洗完澡回到床上之後, 更想睡覺了, 設定鬧鐘到 18:30 之後, 我便不省人事了, 18:30 之後, 我被鬧鐘吵醒, 但身體發出沈重的抗議, 我的身子根本無法動彈, 就這樣, 賴床到 19:00 之後, 總算可以動了。下床到櫃台辦理外出之後, 我終於踏上了日本的街道, 正式迎來我的日本之旅。

街上很多店家, 我在尋找晚餐的下落, 燒烤、中華料理、日本料理、居酒屋 ... 琳瑯滿目, 看得我每家都想進去大快朵頤, 不過 ... 前一天我因為感冒去看醫生, 由於是腸胃型感冒, 昨天拉好幾次肚子, 今天搭飛機前, 又一次, 醫生囑咐我兩樣東西不能吃, 這個不能吃, 那個也不能吃, 所以我最後到全家便利商店, 買了一個飯糰果腹, 覺得不太爽。

不過這裡有我想逛的 book off, 這是二手書店, 但不是只有二手書, 還有其他二手物品, 我懷著興奮的心情進去, 希望買到一些想要的二手書籍, 台灣書店賣的日本書, 定價都不便宜, 我來這裡一次撈個夠本。

不過事與願違, 逛了幾層樓之後, 發現沒怎麼讓我有興趣的書籍, 漫畫區也沒看到想要的 jojo 冒險野郎, 最後什麼都沒買就離開了。在稍微晃了幾條街後, 已經是日本時間 20:30, 店家們好像也漸漸要關店的感覺, 覺得無趣的回旅館了。

  

回到 6 樓, 去了餐廳要了熱水, 我要準備吃藥, 熱水在日本似乎不太容易得到, 這間膠囊旅館在餐廳有提供熱水, 但不能拿來泡麵, 基本上, 這間膠囊旅館禁止外食, 我是到了第二天要泡麵的時候才知道, 但如果是要拿來喝的, 那就沒問題。

在這裡遇到好心的中國店員, 有了共通的語言, 溝通起來就方便多了, 所以我才能順利的要到熱水, 他也很好心的讓我坐在這裡, 我沒有點任何東西, 不過這個餐廳有吸煙區, 並沒有特別分隔, 我很容易就聞到隔壁吸煙區的煙味, 沒吸煙的朋友, 建議吃飽再回來。至於房間則是禁止吸煙的。

回到床上, 打開電視, 是的, 這個小小的棺材還有放電視的空間, 隨意的轉了幾台, 當然也有 A 片台, 日本人嘛! 這個電視靠近床位出入口, 每次爬進床位, 幾乎都要撞到一次, 還好旅館人員用了一塊泡綿保護, 我不至於直接撞到電視本體, 不過由於我有 4g 吃到飽網路, 晚上的時間就看 youtube 度過吧! 棺材空間其實不算狹窄, 在裡頭翻身, 半起身看書、玩平板都沒什麼不適。

這種膠囊旅館會遇到打呼大戰, 運氣好沒事, 運氣不好遇到幾個會打呼的人, 那可難過了, 住宿第二天時就遇到這樣的人物, 好不容易習慣他的打呼頻率了, 他又改變頻率, 得要時時適應, 這是比較困擾的部份。呼! 累了, 我要睡了, 晚安。

秋葉原 (2/4) >

2017年12月12日 星期二

[自助日本行] - 20171125 秋葉原 (2/4)

日期: 20171125 (2/4)
地點: 上野-秋葉原-上野
以下提到的時間均為日本時間

↓ 上野-秋葉原-上野


今天是來到日本的第二天, 目標是宅宅的聖地 - 秋葉原。我不喜歡緊湊的行程, 享受慢活的感覺, 所以我都睡到自然醒才出門, 這種悠閒感如果跟團就沒辦法了, 出旅館時, 已經是 09:30。

交通方面已經設定好搭乘山手線, 而我昨天搭乘 skyliner 到達的車站是「京成上野站」, 今天要去「JR 上野站」, 很不幸, 他們並不是在同一個建築物上, 一開始我還以為這兩個站是在同一個建築物, 沿著京成上野站的指示符號, 竟然出了京成上野站, 來到另外一個方向, 從這方向走去, 不久, 我便看到了 JR 車站, 這時候大約是 09:45, 過了馬路之後, 進入一個大建築物, 這個應該就是 JR 上野車站吧!

懵懵懂懂的來到 JR 上野站, 到這裡不用買票, 因為我有 suica, 這個類似一卡通, 只要逼逼感應一下, 就可以通過車票閘門, 進入車站月台。依照著車站內的指示牌, 我很快就找到了通往山手線的方向; 不過不急著過去, 這裡還有另外的出入口可以搭乘新幹線, 我好奇的往新幹線的方向走去, 把日本的鐵路系統搞清楚也是我這次來的目標之一。

走到新幹線的票券閘門前, 往裡頭看了看, 還真不是普通的複雜, 寫的日文、英文指示牌完全看不懂, 下次再來從 JR 上野站搭乘新幹線, 這次看看就好了, 我找了台沒有人的售票機, 胡亂著按著按鈕, 看看如何買票, 無奈, 除了得到很複雜的心得外, 沒什麼突破, 還是得好好的找資料才行。



胡亂繞了一圈之後, 覺得沒什麼搞頭, 還是往山手線去吧! 秋葉原女僕, 我來了!

問了問站員怎麼用 suica 之後, 感應一下就過了收票閘門了。心中還蠻緊張的, 第一步成功了, 再來就是成功的前往秋葉原車站, 應該不會有問題吧! 確認是那個月台之後, 在該月台等車, 沒多久, 車就來了, 沒有猶豫, 直接上車。

之前看過路線圖, 上野往秋葉原方向, 第一站就是秋葉原了, 我在第一站停靠後, 馬上就下車了, 咦! 怎麼感覺怪怪的, 雖然我沒來過秋葉原, 但這裡看起怎完全不像是秋葉原的感覺。

下錯的車站 - 御徒町
原來我搞錯那個路線圖了, 那個其實只是簡圖, 實際上的車站比那個還要多。我所下車的地方是御徒町, 搞清楚之後, 等待下一台車, 繼續往山手線前進, 這次我很注意的看著停車跑馬燈, 確定是秋葉原之後, 才放心的下車。

下了站之後, 搞不清楚從那個方向出去, 我慢慢的看著指示牌, 想搞清楚這些錯綜複雜的關係, 這裡有別的出入口, 可以轉搭其他非 JR 的鐵路, 實在複雜, 我看看就好, 今天的目的很單純, 就是秋葉原。最後從電気街口出站。



這次沒搞錯, 終於到了耶! 好興奮阿! 一出站就看到好幾位女僕打扮的女孩在發傳單, 傳說果然是真的, 網路沒有騙人。

台灣很多地方會去模仿日本, 建案會取名為輕井澤, 電器商店街會取名秋葉原, 然後號稱是台灣秋葉原, 像是這個:

「台灣秋葉原」慘淪蚊子館!府砸1.35億打造 最慘一天0遊客

還有這個:

難經營! 「五鐵秋葉原」熄燈易主 剩餐飲撐場

好像只要取個一樣的名字, 就能營造日本秋葉原的感覺, 哪有可能這麼容易, 秋葉原賣的東西台灣有嗎? 高品質的電器、豐富的動漫產品、品項良好的二手動漫物品、絕版高價的二手娃物、女僕文化 ...

不提建築物本身, 因為這比較容易複製, 蓋個大樓就好, 而這些人大概以為蓋個大樓, 招招商, 就能打造出秋葉原了。

沒有背後堅強的文化軟實力、製造優秀的產品的硬實力, 哪能成功, 少了這些東西, 就只是普通的電器銷售大樓, 那有什麼特別的。

所以真正的女僕 ... 不 ... 秋葉原, 我來了! 要去秋葉原當然去日本正宗的秋葉原。

秋葉原有電器、動漫、公仔很多吸引宅宅的東西, 我的目標是 doll point (101-0021 东京都千代田区外神田 1-15-16 广播会馆 8层), volks 娃店。我用一樣的方法, 參考著 google map, 來到了地圖上附近的點, 但怎麼找也找不到 doll point 在哪裡? 奇怪, 明明就很接近了, 怎麼都沒看到類似的店名。

先隨便找一棟樓進去逛逛吧! 這棟有 6 個樓層以上吧! 我在裡頭轉了好幾層, 看到許多動漫公仔, 很漂亮, 但我心不在焉, 我只想找到 doll point 娃店, 快速的轉了幾層樓之後, 我快速的下樓出門, 這裡沒有 doll point。

原來店名不是寫 doll point, 而是「ボークス ドールポイント秋葉原 / ホビースクエア秋葉原」, 不熟悉日文的我, 難怪找不到了。最後我在群組上發問, 拍了附近的照片, 好心的娃友提供了正確的情報, 告知我正確的大樓以及樓層, 終於讓我正確找到 doll point 娃店了。另外也順道逛了 7 樓的 azone 娃店。

細節請參考:
而光是 doll point 就逛到 14:00, 先找間用餐地點, 這裡小吃店不少, 吃的很好打發, 麻煩的是我「這個」也不能吃, 「那個」也不能吃, 最後找了一間麵店, 這個看起來很清淡, 應該可以吃。

這家店是用自動販賣機賣票券, 這不用人教, 很直覺, 但我還是先看別人怎麼使用, 依樣畫葫蘆的買到了票券, 本以為這樣就可以順利點餐, 但其實然, 將票券拿給老闆之後, 老闆要我先去坐好, 他會用叫的, 問題就在這裡, 我怎麼可能聽的懂呢? 還好老闆有注意到我這個外國人聽不懂, 特別關照, 在我頻頻回頭望著他時, 他指著旁邊的麵, 示意這碗麵是我的, 順利取得蕎麥麵, 這是我在日本正式的第一道用餐食物。

這碗蕎麥麵除了本身的麵之外, 還付了一顆蛋, 看起來ㄉㄨㄞㄉㄨㄞ的, 一副很好入口的樣子, 咬了一口, 果然是好蛋。我在這家麵店休息了很久, 四周的客人都換了好幾輪, 我還是沒有想要離開, 一定是剛剛逛的太累了。

休息、滑完平板之後, 也該離開了, 我才逛了一家店, 實在不過癮, 返回原大樓, 往 7 樓走去, 這次要逛 azone 娃店。

一樣, azone 娃店的詳細內容請參考《[娃店] 秋葉原 azone 娃店

逛完 azone 娃店之後, 我沿著各樓層慢慢晃下來, 每層都是動漫產品、公仔, 看到很多平常沒看過得公仔, 不過都沒下手購買, 可能是在 doll point 花太多了, 也沒看到真的那麼喜歡的, 純欣賞就好。

真的有點累了, 本來還想去 book off 看看, 昨天上野的 book off 沒看到喜歡的東西, 但真的累了, 可能是身體還沒完全復原, 想回旅館休息, 車站前有棟大樓是在賣筆店, 去看看好了, 我想看 Panasonic Toughbook CF-SZ6 系列, 裡頭有很多日系品牌的筆電, 但就是沒看到 panasonic 的 notebook, 失望的離開這裡, 往車站去了。

16:50 左右, 我便進站等車, 準備搭乘山手線回「JR 上野」站, 10 分鐘之後, 我回到「JR 上野」站, 逛起裡頭的超級市場, 看看有什麼好物可以購買。

18:00 回到旅館, 向櫃台人員取了行李箱, 好好的整理一下今天的戰利品。再來便是去昨天很滿意的大澡堂洗澡, 每次都要泡個半小時以上, 冷冷的天氣, 泡上舒服的熱水, 真是一樣享受, 今天我挑戰了戶外池, 剛出去的時候, 冷風颼颼, 趕緊跳進池水, 在外面果然就是不一樣, 看得到天空, 但看不到星星。

今天的身體好很多, 但我不敢大意, 還是把醫生開的藥吃一下, 免得之後又發作, 明天的行程可是另外的重頭戲, 希望可以成功。

本來想要熱水吃泡麵, 但最後發現這樣是不行的, 必須要點餐廳的東西吃, 我就點了看起來不那麼油膩的炒飯, 難得來日本一趟, 到現在還沒吃到什麼特別的, 沒辦法, 身子要緊, 不過炒飯卻意外的好吃, 就那個薑片我吃不慣。

回來之後覺得哪裡怪怪的, 對了, 我忘記去女僕餐廳了, 我懊惱的想起這件事情, 也只能下回再去, 明天的目標是箱根, 要來一趟火車之旅。

< 上野 - 特別的膠囊旅館 (1/4) - 緊湊的一天 - 箱根與箱根地區的交通工具 (3/4) >

2017年12月9日 星期六

[自助日本行] 20171126 緊湊的一天 - 箱根與箱根地區的交通工具 (3/4)

日期: 20171126 (3/4)
地點: 上野 - 新宿 - 箱根



[JR 上野 - JR 新宿]
對於日本的鐵路, 我感到陌生與害怕, 不知道該如何搭乘, 但我很想要搭乘這些複雜的鐵路系統, 台灣的鐵路系統太單調。雖然找了不少資料看, 但如果沒親自試過一次, 連買票都不會, 更不用談搭乘火車了。這次挑戰往「箱根的鐵路」。我打算從新宿出發, 搭乘小田急線, 到達箱根。如果失敗搞不定, 我就去逛新宿。

一開始先從「京成上野站」走到 JR 上野站, 不難, 昨天走過了, 雖然回來時迷了路, 但還是安全回到上野的住宿地點。

再來從 JR 上野站走到山手線出入口, 昨天去秋葉原走過了, 不要走錯方向, 另外一邊是上野新幹線出入口, 很複雜的, 搭乘山手線往 JR 新宿站, 記得從「西口」出來, 出口總共有: 東口、南口、北口, 走錯了出口處, 要再走到西口, 可能會難倒外國/地人。有人從東口走到西口花了 2 小時, 但是正確的路徑只要幾分鐘, 我們外地人是不是能找到正確的路徑, 可能是個問題。

[JR 新宿 - 西口小田急線 - 箱根湯本車站]

從新宿車站到箱根湯本車站, 有好幾台火車可以搭乘, 分成 2 類:
  • 浪漫特快
  • 其他慢速火車
買票有兩種方法: 去櫃台, 或是按售票機。

櫃台有分外國人/日本本國人用的, 外國櫃台可以使用中文, 基本上買票或是詢問交通相關問題都可以, 一定可以成功買到票, 問題在於要排隊排很久, 一個小時要吧!

藍色的櫃台就是外國人專屬櫃台, 很多人吧!

我要介紹用售票機買票的方法, 只要你會按, 幾分鐘就能搞定。一開始我在售票機一旁觀看別人怎麼買票, 想試圖用這方式學習, 但是沒什麼功效。

最後我為什麼會呢? 因為我在剪票口看成功買到票的人, 然後口音是中文的, 便很不要臉的去請教她, 運氣很好, 她教我這個方法, 很容易就買到票。

買到的票是「箱根周遊券」, 可以搭乘「小田急線新宿」車站到「箱根湯本」車站所有的「慢速」火車, 以及到箱根湯本之後所需要搭乘的交通工具。

fig 2. 購買箱根周遊券

但是我想要搭乘「浪漫特快」火車該怎麼辦呢? 「浪漫特快」全車指定席, 台灣術語就是要「劃位」, 這張票要怎麼買呢? 想辦法到 fig 3. , 正確操作之後就可以了, 不會操作怎麼辦, 把車票照片問站務人員, 他會告知你怎麼按。就是站務人員示範一次給我看的, 大抵就是選時間, 有位置的話就可以按下那個時間的火車, 沒有就回到上一頁, 選更後面一點的時間。

注意, 「浪漫特快」火車需要兩張票券, 一張是「特急券 (特別急行券)」, 另外一張是慢速列車的車票, 和台灣的火車票概念不同, 也和 JR 或是京成電鐵的 skyliner 不同, 這些都是要特別注意的, 身在台灣的我們, 無法體驗這些多樣的票種規定。fig 3. 的售票機可以單獨購買「特急券 (特別急行券)」或是兩張票 (特急券 + 慢車車票), 進入月台剪票口時, 需要兩張車票疊在一起通過剪票機器。而箱根フリーパス (箱根周遊券或是箱根 free pass) 就可以替代那張慢車的火車票券。所以有箱根フリーパス (箱根周遊券或是箱根 free pass) 只要買「特急券 (特別急行券)」即可。

fig 2.1 箱根周遊券, 其實正確名稱是箱根 free pass, 日文片假名就是 free pass

fig 2.2 下方的票就是「浪漫特快」的車票, 有車的時間, 以及座位。

告訴我的太太是網路預約「浪漫特快」車票, 去日本櫃台就可換得車票, 當然也可以操作售票機拿到預約的票, 但是我不會。

按下 fig 2. 的フリーパス (這就是英文的 free pass) 按鈕, 再來的畫面應該就看得懂了。我是買「2日間有效」, 也就是 2 日有效, 請參考 fig 2.1 的圖, 我是 20171126 買的, 有效日期到 20171127。

fig 3. 浪漫特快特急券

雖然我大概有把握怎麼買票了, 但還是怕怕的不敢買, 在售票機猶豫徘徊很久, 還有什麼我沒考慮到的呢? 最後心一橫, 打著反正不會搭前往箱根火車的話, 就坐到箱根湯本再坐回新宿就好, 白花的車票就算了, 但至少要有一次經驗, 只看教學文章, 不自己冒險一次, 怎麼樣都是不會的, 失敗了, 至少也得到失敗的經驗。

離 11:10 還蠻久的, 先去旁邊的百貨公司買個吃的, 在火車上用餐吧! 我怕買太多, 想說道箱根湯本再買吃的就好, 只買了一個天婦羅飯糰和一罐熱綠茶, 哪裡知道這是餓肚子的開始。今天很熱門, 10:20 的車已經沒有座位了, 從月台的指示燈號就可以看到 full 的訊息, 但有趣的是, 客服人員示範使用售票機時, 卻可以買到 10:20 的票, 這表示有人退位, 可惜那時候的我還沒完全搞懂這些買票的規則, 要不然就可以早點出發了。

浪漫特快車來了, 我要搭 11:10 的車, 找到正確的月台, 等到可以上車的時間, 便進入車廂尋找我的座位, 隔壁是中國遊客, 和他交換了不少旅遊情報, 我都是這樣, 遇到說中文的, 就打聽他們的旅行情報, 邊玩邊做功課。他用的可是 iphoneX 和 iwatch, 第一次看到呢!

在路途上, 最興奮的就是看到富士山, 我終於親眼看到了, 而不是小丸子中的卡通富士山, 好特別阿, 上頭真的是白白的呢! 「展望席」
則是另外的一種座位, 視野比較好,「【箱根紅葉Day2-2】新宿 → 箱根湯本:大人氣展望席 – 小田急浪漫特快50000型(VSE)http://littlebeartw.com/hakone_2_2/」紀錄了展望席怎麼購票, 我只要能成功買到票就很開心了, 展望席下次再來挑戰。

在網路上找了很多資料, 在箱根要搭的交通工具很多, 除了到小田原/箱根湯本的火車外, 在箱根還有各種交通工具可搭乘。
  • 箱根登山鐵路 - 這是爬山火車, 以「之」字方向前進, 什麼意思? 就是火車有時候會向前開, 有時候會向後開, 很好玩的, 你一定搞不懂這意思, 搭過一次會比較清楚。
  • 箱根登山纜車 - 雖然寫纜車, 但其實也是爬山火車, 就一路向上爬的火車, 不會有時候向前開, 有時候向後開, 而是一路向上、向前開。
  • 箱根空中纜車 - 這才是我們想像中的纜車, 飛在空中的。
fig 3.1 箱根登山鐵路 fig 3.2 箱根登山纜車

fig 3.3 箱根空中纜車

再來最好參考箱根示範行程, 他會很清楚說明到了那個地方, 要改搭什麼交通工具, 如果坐錯了怎麼辦? 不會怎麼辦, 回到原來的地方而已, 如果你像我一人有很多時間可以慢慢耗, 是完全不用怕的。

大概 12:30 後, 終於到了箱根湯本車站了, 看到 fig 10. 往強羅方面的標誌, 趕緊去排隊等車, 連逛的時間都沒有, 後來我才知道, 我會一路這樣等下去排其他的交通工具。

fig 10 
[箱根湯本車站 - 強羅車站]

這就是網站介紹的箱根登山鐵路, 這是爬山火車, 以「之」字方向前進, 我好不容易有個座位, 附近被日本美少女包圍, 感覺很幸福, 但是因為我的自作聰明, 以為已經到了強羅, 自己就下車了, 還好有問鐵路司機, 他指示我趕緊上車, 這裡不是強羅啦!



人很多, 多到爆, 我再上車後, 當然已經沒有座位了。沿途司機會下來搬動鐵路號誌, 這時候行車方向可能就會從前面改變成後面, 還真的蠻有趣的, 感覺很新鮮, 台灣怎麼沒有這麼好玩的鐵路可搭乘。

[強羅車站 - 早雲山車站]

到了強羅車站後, 我沒得休息, 繼續排隊往早雲山車站, 這裡等比較久一點。

fig 11

旁邊的販賣部我完全沒有時間逛, 趕緊排隊去了。這裡排隊的人開始多了起來, 過了一段不算短的時間後, 我才上了這部火車。

這是網站介紹的箱根登山纜車, 但其實不是我們想的哪種纜車, 也是登山火車, 火車停到我面前的時候, 門是正對著我, 運氣真好, 我又有位置坐了, 這台火車擠的滿滿的, 相當恐怖, 我被歐巴桑團團圍住, 這個也有博愛座, 我小心的跨過, 去坐一般的位置。

這段乘車時間就沒那麼長, 沒一會兒, 就到了早雲山車站, 準備來搭纜車了。

[早雲山車站 - 大湧谷]
這個纜車就是類似台北貓纜那個, 遺憾的是, 人潮也是和貓纜一樣, 要排隊, 而且要排很長, 有一位工作人員舉著牌子, 告知遊客, 是從這裡開始排起哦!



這邊開始要排很久很久, 從車站的外面, 一直慢慢的走到車站裡頭, 在蜿蜒了好幾個彎, 並爬上一個小樓梯之後, 我終於看到纜車了。「哇!」果然震撼, 這個東西我一定要坐到, 都排了這麼久了, 不去搭乘豈不可惜, 我本來預計搭完纜車就要延原路回去, 不過這時候我的想法已經改變了。



搭上纜車之後, 一出車站, 迎面而來就是令人驚呼的美景, 覽車內所有人都發出讚嘆的一聲, 「哇!」真的厲害, 「早雲山駅」在我們身後, 緩緩的遠離它了, 而我們也上升的越來越高, 又看到富士山了, 不過沒有在浪漫特快看到的那麼美, 我在這邊拍下的富士山, 都不是很漂亮。

大約 10 分鐘後, 我們聞到濃濃的硫磺味道, 來到大湧谷了, 地面上滿滿的濃煙, 看起來非常壯觀, 車上每個人都低頭望去, 沒多久到大湧谷站了, 該下車換另外一台纜車了。

[大湧谷 - 姥子 - 桃源台港]

到了大湧谷, 老樣子, 趕緊再去排隊, 等著搭下一台纜車, 找到姥子 - 桃源台港乘車方向後, 就在哪裡排了起來, 這裡依然有不少人, 所以還是長長的人龍, 這裡風很大, 溫度很低, gore-tex 撐的有點勉強, 衣服穿太少的朋友可能會很難熬過這段等纜車的時間; 過了一段不算短的時間之後, 我終於又上了纜車, 又和另外一群陌生人一起坐上了纜車。



這裡會過繼一個車站, 不需要下車, 就直接通過, 繼續前往桃源台港口, 疑! 怎麼變成港口了, 是的, 因為接下來要去搭船了。

[桃源台港口 - 箱根町港 - 元箱根港口]

我在這裡上了個廁所, 投了一罐熱飲, 我肚子有點餓, 整天只吃了一個天婦羅飯糰而已。看到這裡有販賣部, 本想好好選購一番, 吃點熱食, 但我看到海賊船的開船時間只剩下 5 分鐘, 媽呀! 跑跑向前衝, 又繼續往港口奔去。



好不容易終於給我上船了, 船上人很多, 幾乎沒有位置了, 我從船底跑到船外, 在從船外跑回船艙, 勉強找到一個位置, 終於可以好好的休息了, 喝著我那好不容易得來的熱奶茶, 喝下後, 心中暖暖的, 終於不用在排隊了。

過了一段時間之後, 海賊船會停留箱根町港, 我一時大意, 看到很多人下船, 就跟著下船了, 其實要到元箱根港下船才對, 還好有再次和船務人員確認, 他指示我上船, 我趕緊跑了回來。



「元箱根港」這裡才是對的, 這是海賊船的終點站。呼! 結束了嗎? 還沒, 再來是登山巴士。

[元箱根港口 - 箱根湯本車站]

又是排隊惡夢, 時間已經很晚了, 已經是日本時間 16:30, 本來打算到附近的神社一遊, 但真的沒時間了, 人潮眾多, 還是來排隊好了, 到時候沒車回新宿那就慘了。



這一路走來, 遇到蠻多說中文的遊客, 有時候偷聽一下他們的討論, 列入自己的情報網中, 更清楚知道整個交通路線是不是正確。

開始上車了, 和站務人員做最後的確認, 確定是往箱根湯本車站的 bus 後, 就上車了, 這次沒之前的好運氣, 我得站著了。

隨著蜿蜒的山路, 車上乘客被搞得東搖西晃, 我得拉緊旁邊座位的鐵欄杆才能固定好身形, 不隨公路的蜿蜒而擺動, 這條路上車很多, 看起來是有塞車, 我不禁想了一下, 今天怎麼這麼多人? 仔細一想, 今天是星期日阿! 難怪這麼多遊客了。

平日我很討厭排隊, 今天到是一次排得夠了。從登山火車到巴士, 只有海賊船不用排隊, 整個過程耗掉不少時間, 也沒有時間可以把其中景點細細品味, 只知道搭乘了不少交通工具, 累死我了。

大約 17:30, 我終於又回到了箱根湯本車站, 我都已經忘記它長什麼模樣了, 其實我也沒出過站看過它的樣子, 原來車站長這樣哦!


回程要搭乘浪漫特快的話, 還要在買一張特急券才行, 這我已經會了, 就去售票機按按即可, 沒在怕的啦! 只怕沒位置的票可以買, 不過我找阿找, 找阿找 ... 怎麼沒有售票機阿! 只有人工售票, 一堆人排在那, 我不想在排隊了, 就做慢車回去吧! 我已經知道怎麼搭乘慢車回去, 心中不急, 看著頭上的列車資訊, 就你了, 17:42 的慢車, 到小田園, 然後再換車到「小田急新宿站」。我沒寫「新宿站」而是寫「小田急新宿站」, 因為 JR 也有一個新宿站, 把該鐵路經營的公司也寫出來, 這樣資訊會比較清楚。

搭乘 17:42 的慢車到小田園,

我選這台是因為我肚子餓了, 我得買個東西吃才行, 順便買個名產, 總算能讓我好好的逛一下販售部, 我選了壽司便當, 準備在車上吃, 還買了「曾我梅林の梅酒」, 梅酒加上氣泡水或是七喜很好喝, 它有個很厲害的名字 - high ball, 其實 high ball 不是加梅酒, 好像是加伏特加, 但沒差, 我喜歡 high ball 這個帥氣的名字。

而結帳時, 店員問我有沒有「箱根フリーパス (箱根周遊券或是箱根 free pass)」(好不容易才聽懂), 出示後, 會有一點小折扣, 箱根フリーパス真的好用。

[箱根湯本車站 - 小田園 - 小田急新宿站]

時間差不多了, 我進月台了, 沒注意到是幾號月台, 差點又上錯車了, 外國人搞不清楚上錯車是很容易理解的嘛!

順便說說箱根フリーパス (箱根周遊券或是箱根 free pass) 真的好用, 一路搭乘這麼多交通工具以來, 只要秀出這張票券即可, 真的便宜又大碗, 只是我買的二日券, 我一天就把它用完了。

找到正確月台, 上了正確的火車後, 慢慢的開啟了, 一樣, 車上人很多, 也一樣聽得到說中文的遊客, 在這裡我還不能安心, 等到確定往小田原站出發, 沒搭錯車之後, 我才安定了下來。

fig 20. 抵達小田原車站

17: 59 之後, 我抵達小田原車站了, 這時候的我還傻傻分不清楚, 再來要搭什麼車, 看到 fig 20. 的車次後, 我已經快來不急了, 車勒, 車勒, 是你嗎? 看了標明往新宿車站後, 我趕緊跳上車, 沒多久, 車就發動了。

運氣不錯, 這台列車是所有慢車中最快的「快速急行」 , 停靠的車站較少, 裡頭雖然人少了點, 但我還是沒有位置, 不過肚子真的太餓了, 趕緊把那個壽司飯糰便當拿出來吃, 咬了一口, 發現還真不是普通的難吃, 日本人怎麼可以把壽司做的這麼難吃, 不可原諒。

所有慢車停車點

不過沒辦法, 我一天沒吃東西了, 有得吃還是得吃。過了一站之後, 我有座位了, 在位置上好好享用我那個壽司便當, 再來的事情就沒那麼困難了, 只要等車停靠新宿站就可以了。19:30 我抵達了「小田急新宿站」, 我從 JR 新宿的西口往小田急線, 現在出來是往 JR 新宿的南口方向, 從南口進入 JR 新宿車站。從這裡我要切換到「JR 新宿站」, 搭山手線回 JR 上野, 在由 JR 上野往「京成上野」的方向走去, 昨天回到 JR 上野迷路一次, 這次要小心不要又迷路了, 但實際上, 我又迷路了。原來 JR 上野車站很大, 每次出站都和進站的路線不同, 這次我從 JR 上野的二樓出口出來, 我也嚇了一下, 怎麼完全都不同, 但只要謹記, 往「京成上野」的方向走去, 沒多久就看到熟悉的路口, 也順利抵達「京成上野」車站, 再來往住宿的地方回去就不再是問題了。

回去的路上, 到多慶屋晃了一下, 買了禮物給某人, 希望她能開心的收到禮物。回到膠囊旅館時, 已經是 21:15 了, 準備來去大澡堂洗澡、泡泡人工溫泉, 結束今天緊奏的一天。