Skip to content

v0.0.155

Choose a tag to compare

@github-actions github-actions released this 15 Aug 17:27
· 121 commits to main since this release

rePIU v0.0.155

이전 릴리스 v0.0.154 이후의 변경입니다. 이번 릴리스는 dynamic traced 실행 경로의
DOS 파일 생성 디스패치를 복구하고, 640×480 논리 화면이 확대될 때 Glide point 크기도
viewport에 비례하도록 조정합니다.

Dynamic DOS 파일 생성 복구

  • dynamic traced INT 21h/AH=3Ch 요청을 공용 DOS HLE 처리기로 전달합니다. 파일 생성
    의미, 반환 레지스터와 EIP 진행은 기존 VFS 구현이 계속 단일하게 관리합니다.
  • 파일 close 시 read stream뿐 아니라 write stream cache도 해제합니다. 생성한 파일을
    닫은 뒤 scratch 디렉터리를 정상적으로 정리할 수 있습니다.
  • 실제 CD 21 instruction과 guest 경로를 사용하는 probe를 추가해 traced dispatcher부터
    파일 생성과 정리까지의 통합 경계를 검증합니다.

Viewport 비례 Glide point 크기

  • 원본 640×480 논리 화면과 drawable viewport의 가로·세로 배율 중 작은 값을 Glide point
    크기로 사용합니다. 1280×960 viewport에서는 기존 1×1 dot가 2×2 physical pixel로
    표시됩니다.
  • 축별 배율이 다를 때 작은 값을 선택해 dot의 정사각형 형태를 유지하고, 축소 화면에서는
    최소 1 pixel을 보장합니다.
  • 계산된 크기를 OpenGL이 보고한 aliased point 지원 범위로 제한하고, 직접 point와 batch
    point 렌더링에 동일하게 적용합니다.

검증

  • Win32 x86 Release의 repiu_aot_probe, repiu_glide_render_probe, repiu 빌드가
    성공했습니다.
  • AOT probe는 dos_file_create_traced_dispatch=true,
    dos_file_create_cleanup=true, dos_file_create_all=true로 통과했습니다.
  • Glide render probe는 1×, 2×, 3×, 비정형 viewport, 축소와 무효 크기의 point 배율
    계산을 통과했습니다.
  • 기존 C4819 코드 페이지 경고와 optional LibUSB 탐색 경고만 남았습니다.

남은 실기 확인

  • 자동 검증은 통과했지만 실제 게임의 다음 실행 frontier와 생성된 ERRLOG.txt 내용은
    아직 확인하지 않았습니다.
  • pumpit8 서비스 화면에서 2× viewport의 dot가 실제로 2×2 pixel로 표시되는지 육안
    확인이 필요합니다.

rePIU v0.0.155

Changes since v0.0.154. This release restores DOS file-create dispatch on
the dynamic traced execution path and scales Glide point size with the viewport
when the 640×480 logical display is enlarged.

Dynamic DOS file creation

  • Dynamic traced INT 21h/AH=3Ch requests now delegate to the common DOS HLE
    handler. The existing VFS remains the single owner of file-create semantics,
    return registers, and EIP advancement.
  • Closing a file now releases the write-stream cache as well as the read stream,
    allowing scratch directories to be cleaned up after created files are closed.
  • A probe using a real CD 21 instruction and guest path covers the integration
    boundary from traced dispatch through file creation and cleanup.

Viewport-scaled Glide point size

  • Glide point size uses the smaller horizontal or vertical ratio between the
    original 640×480 logical display and the drawable viewport. At 1280×960, a
    former 1×1 dot occupies 2×2 physical pixels.
  • Selecting the smaller ratio preserves square dots for non-uniform scaling, and
    downscaled viewports retain a minimum size of one pixel.
  • The calculated size is clamped to OpenGL's reported aliased-point range and is
    applied consistently to direct and batched point rendering.

Verification

  • Win32 x86 Release builds of repiu_aot_probe, repiu_glide_render_probe, and
    repiu succeeded.
  • The AOT probe passed with dos_file_create_traced_dispatch=true,
    dos_file_create_cleanup=true, and dos_file_create_all=true.
  • The Glide render probe passed point-scale cases for 1×, 2×, 3×, non-uniform,
    downscaled, and invalid viewport dimensions.
  • Only the existing C4819 code-page and optional LibUSB discovery warnings remain.

Remaining live checks

  • Automated verification passed, but the next live-game execution frontier and
    generated ERRLOG.txt contents have not yet been inspected.
  • The pumpit8 service screen still needs a visual check that dots occupy 2×2
    pixels in the 2× viewport.