[DanTri] "Cha đẻ" của NES qua đời

Thảo luận trong 'Thư Giãn Express - Bản Tin Cuối Ngày' bắt đầu bởi ichi0512, 14/12/21.

  1. mashimuro

    mashimuro John Marston's Redemption Lão Làng GVN

    Tham gia ngày:
    16/11/04
    Bài viết:
    21,912
    Ta 85, năm 3 tuổi nhà bà ý (em bà nội) có mở tiệm nes 2 máy, ông già hay dẫn ta qua chơi bắn xe tăng (battle city)
     
    phunghungst and Netorare like this.
  2. Shooter_CD

    Shooter_CD Gian thương trốn thuế Lão Làng GVN

    Tham gia ngày:
    4/1/10
    Bài viết:
    19,585
    Nơi ở:
    Venice
    Nhìn cái máy bn kỉ niệm ùa về, trưa trưa ngồi chơi Mario với lũ bạn hàng xóm, cái băng 7 trò nấm hồi đó hình như gần 200k, mà lúc đó dĩa cơm sườn có 5k/ dĩa

    Hồi đó may mắn là nhà nội mở quán game có đủ các loại máy Nes, Snes, PS1, mà lúc đó toàn gọi máy băng, đĩa vuông, đĩa tròn =))
     
    mancom and sdfgh like this.
  3. UltraSmash

    UltraSmash Gordon "λ-2" Freeman

    Tham gia ngày:
    22/7/16
    Bài viết:
    13,249
    Super robot nào h chỉ chơi được mỗi bản OG=))
     
  4. Shooter_CD

    Shooter_CD Gian thương trốn thuế Lão Làng GVN

    Tham gia ngày:
    4/1/10
    Bài viết:
    19,585
    Nơi ở:
    Venice
    Game này có chơi nè, oẳn tù tì lột đồ, siêu hiếm lun :))
     
    Netorare and leonsh like this.
  5. Netorare

    Netorare Persian Prince

    Tham gia ngày:
    10/3/21
    Bài viết:
    3,794
    Huyền thoại gây nứng thời xưa !choo
     
  6. SPC700

    SPC700 Legend of Zelda

    Tham gia ngày:
    1/10/20
    Bài viết:
    1,116
    Lập trình cho các hệ máy cũ này cũng thú lắm. Cảm giác như dùng hạt nguyên tử để tạo ra cả thế giới.

    Hôm rồi chơi lại Seiken Densetsu 3 trên SFC, chợt nhận ra là game này có một số hiệu ứng đồ họa khá tốt. Một trong số đó là hiệu ứng đêm ngày. Cùng một khung cảnh, nhưng vào ban đêm thì ảnh nền như có một lớp filter phủ lên, cảnh vật như chìm trong bóng đêm. Ở khung cảnh ban đêm, mọi màu sắc dường như sẫm hơn, tối hơn so với cảnh ban ngày. (Hình 1)

    [​IMG]

    Một cách truyền thống để thể hiện hiệu ứng này là sử dụng chức năng color math, tức chức năng tính toán màu sắc của máy SFC. Theo đó, hình ảnh được hiển thị trên màn hình chính (main screen) nhưng được cộng hoặc trừ với màu sắc ở màn hình phụ (sub screen) rồi chia đôi giá trị (tùy chọn) màu. Với cách này thì pallet màu vẫn được bảo toàn nguyên vẹn nhưng vẫn đạt được hiệu ứng màu sắc mong muốn.
    Ngoài ra, còn có cách khác là trực tiếp thay đổi giá trị của từng màu trong pallet. Lần này mình thử tiếp cận theo hướng này. Nhưng làm cách nào bây giờ?
    Chợt nhớ ra rằng trên các phần mềm văn phòng của Microsoft cũng có chức năng tương tự. Thử chèn một hình ảnh bất kỳ vào Power Point rồi phủ lên trên hình ảnh đó một lớp màu đen, nhưng chọn độ trong suốt của màu đen là 50% (hoặc cao hơn nếu muốn sáng hơn, thấp hơn nếu muốn hiệu ứng tối hơn). Hiệu ứng đạt được với lớp filter màu trên Power Point cũng cho ra kết quả tương tự với cảnh ban đêm của Seiken Densetsu 3 trên SFC. (Hình 2)


    [​IMG]

    Tuy hệ màu của SFC là màu 5 bit chứ không phải 8 bit như màu RGB, nhưng nguyên tắc cũng giống như thế. Mỗi màu sắc của SFC là 15 bit nên nó kém sắc hơn màu RGB thật (24 bit) nhưng vẫn là sự phối trộn của 3 màu căn bản: R (đỏ), G (lục) và B (lam). Trong đó bit 15 không được dùng đến, còn mỗi màu căn bản chiếm 5 bit: 0bbbbb ggggg rrrrr. Trong khi đó thì hệ màu RGB thật có cấu trúc: bbbbbbbb gggggggg rrrrrrrr. Do vậy nên nếu phân tích cấu trúc màu của lớp phủ đen 50% trên Power Point thì ắt hẳn sẽ tìm được hướng giải quyết cho việc tạo ra màu sắc tối như bóng đêm bao phủ trên SFC.
    Thử tạo 3 ô vuông trên Power Point với 3 màu cơ bản: đỏ, lục, lam rồi phủ lên chúng một ô vuông khác màu đen có độ trong suốt 50%. Hiệu ứng thị giác đạt được cũng như lúc nãy. (Hình 3)


    [​IMG]

    Dùng công cụ Eye drop để phân tích giá trị màu thì thấy màu đỏ có giá trị R (đỏ) là 255 (#$FF) trong khi 2 giá trị còn lại (R và B) lần lượt đều là 0. Tương tự, màu xanh lục có giá trị G là 255 trong khi giá trị R và B là 0. Màu xanh lam có giá trị B là 255 trong khi R và G đều là 0. Nhưng còn tại vị trí ô vuông màu đen với độ trong suốt 50% (đóng vai trò lớp filter bóng đêm) thì giá trị của mỗi màu cũng giảm đi một nửa. Thử tạo thêm 3 ô vuông khác với từng màu sắc có giá trị 127 thay vì 255 như cũ thì được màu đậm hơn, trông giống như màu của lớp phủ đen bên trên từng màu. (Hình 4)


    [​IMG]

    Như vậy, bằng cách chia đôi giá trị của từng thành phần R, G, B trong mỗi màu thì sẽ tạo được màu sắc tối như lớp filter 50% đen. Thử áp dụng nguyên tắc này với màu của SFC.
    Do mỗi màu sắc của SFC chỉ chiếm 15 bit nên việc đầu tiên là loại bỏ bit 15 trong giá trị màu.
    LDA {pallet},x
    AND #$7FFF
    STA {pallet},x
    Tiếp theo là tách riêng từng thành phần R, G, B ra khỏi giá trị màu rồi chia đôi từng giá trị đó. Cuối cùng là ghép từng giá trị R, G, B lại với nhau. Do màu đỏ chiếm 5 bit cuối (0-00000-00000-11111) nên đây là cách tách thành phần R ra khỏi giá trị màu.
    LDA {pallet},x
    AND #$001F //tách màu đỏ
    LSR //chia đôi giá trị đỏ
    STA {red}
    Màu lục chiếm 5 bit giữa (0-00000-11111-00000) nên đây là cách tách thành phần G ra khỏi giá trị màu.
    LDA {pallet},x
    AND #$03E0
    Tuy nhiên lúc này kết quả thu được là 5 bit của màu G và 5 bit (giá trị zero) của R. Để lọc ra đúng giá trị G thì cần loại bỏ 5 bit có giá trị zero của màu R bằng cách shift sang phải 5 lần, chia đôi giá trị này rồi shift sang trái 5 lần để khôi phục lại các bit cũ.
    LDA {pallet},x
    AND #$03E0
    LSR #5 //tách màu lục
    LSR //chia đôi màu lục
    ASL #5 //khôi phục 5 bit đỏ
    STA {green}
    Tương tự, màu xanh lam chiếm 5 bit cuối (0-11111-00000-00000) nên để lọc màu này ra khỏi giá trị màu tổng thì cần AND #$7C00, sau đó shift sang trái 10 lần để loại bỏ các bit của màu đỏ và màu lục. Đoạn chia đôi giá trị vừa có được rồi lại shift sang phải 10 lần để khôi phục các bit của màu đỏ và lục.
    LDA {pallet},x
    AND #$7C00
    LSR #10 //bỏ 5 bit đỏ, 5 bit lục mà chỉ giữ lại 5 bit lam
    LSR //chia đôi màu lam
    ASL #10 //khôi phục 5 bit đỏ, 5 bit lục
    STA {blue}
    Bước cuối cùng là tổng hợp 3 giá trị màu vừa chia đôi bằng phép OR.
    LDA {red}
    ORA {blue}
    ORA {green}
    STA {pallet},x
    Kết quả kiểm chứng như hình. Ta được màu sắc tương tự như lớp phủ đen 50%. Trong bước tính toán trên, nếu giữ nguyên một thành phần màu trong khi vẫn chia đôi hai thành phần còn lại thì sẽ được hiệu ứng màu của lớp phủ khác. Nếu giữ nguyên màu đỏ, chia đôi màu lục và lam thì sẽ được hiệu ứng lớp phủ màu đỏ. Hoặc nếu chia từng giá trị màu cho 4 thay vì chia đôi thì sẽ được kết quả lớp phủ đen sậm hơn.
    Với cách này, ta có thể tạo được hiệu ứng lớp phủ trong suốt, màn sương mù hay hiệu ứng xuyên thấu mặt nước, thác nước,...

    [​IMG]
     
  7. UltraSmash

    UltraSmash Gordon "λ-2" Freeman

    Tham gia ngày:
    22/7/16
    Bài viết:
    13,249
    Á đù, có chuyên gia vô luôn rồi, đúng là gvn gì cũng có!hoang
     
  8. Pop Rock

    Pop Rock Liu Kang, Champion of Earthrealm Lão Làng GVN

    Tham gia ngày:
    11/9/08
    Bài viết:
    5,274
    Nơi ở:
    TPHCM
    Xin chia buồn,nhớ một thời tuổi thơ quá.!khoc2
     
  9. sdfgh

    sdfgh Dân liều mạng Tàu ngầm GVN

    Tham gia ngày:
    14/8/03
    Bài viết:
    9,663
    Nơi ở:
    Ngày ngày ngắm biển
    Giờ mà có cái máy nes cũ, cùng thằng bạn chơi contra, jeep v.v thì vui phải biết.
     
  10. haman

    haman Mayor of SimCity Lão Làng GVN

    Tham gia ngày:
    26/6/04
    Bài viết:
    4,423
    Nơi ở:
    Axis
    Drama Cán Bộ vs Asm chưa xem à :v
     
    Netorare thích bài này.
  11. mancom

    mancom T.E.T.Я.I.S Lão Làng GVN

    Tham gia ngày:
    28/1/06
    Bài viết:
    572
    Nơi ở:
    Thiên Lôi
    Ôi tuổi thơ. Hồi nhỏ ra tiệm chơi 500 đồng 1h mấy game NES. Đến lúc xuất hiện SNES với PS1 thì giá giảm xuống nhưng éo có tiền nên vẫn chới game NES.
     
    Netorare thích bài này.
  12. Wind Knight

    Wind Knight C O N T R A Lão Làng GVN

    Tham gia ngày:
    8/9/13
    Bài viết:
    1,518
    Nhớ khi xưa nhà có đầu vcd kèm cái đĩa 300 trò...
     
    Netorare thích bài này.
  13. BI_AN

    BI_AN The Dragonborn GVN CHAMPION ⚜ Duel Master ⚜ Lão Làng GVN

    Tham gia ngày:
    18/5/08
    Bài viết:
    19,638
    Đỉnh cao =]]

     
  14. Ayo

    Ayo Fire in the hole! Lão Làng GVN

    Tham gia ngày:
    30/9/07
    Bài viết:
    2,672
    Nơi ở:
    Lost Heaven
    Giả lập chơi online còn đc.
     
  15. tuanfox5

    tuanfox5 Sonic the Hedgehog Lão Làng GVN

    Tham gia ngày:
    19/3/06
    Bài viết:
    4,629
    Cái Mighty đó hồi lớp 3-4 ta chơi mê mệt, mà ko phá đảo nổi @@ trong khi ta phá đảo cậu bé 3 mắt mà chúng nó cứ trầm trồ.
     
  16. Vouu3.1

    Vouu3.1 50k

    Tham gia ngày:
    25/8/20
    Bài viết:
    3,127
    coi hạt cát xa mạc nghiên cứu mà ghiền vcl !bemwin
     
  17. xDarkxAngelx

    xDarkxAngelx THE ONE ABOVE ALL GVN LEGENDARY ✟ Grim Reaper ✟ Winner Game Award 2024 Nhân Viên Y Tế

    Tham gia ngày:
    21/5/18
    Bài viết:
    31,349
    Nơi ở:
    Blink House
    Vl trò này lậu hả bác, tuổi thơ bị lừa dối cmnr !choo
     
    Netorare thích bài này.
  18. hanhnn13

    hanhnn13 Mr & Ms Pac-Man

    Tham gia ngày:
    5/8/09
    Bài viết:
    235
    Lần đầu tiên chơi NES là chơi Mario 200 đồng được 10 phút
     
  19. Zainor Dean

    Zainor Dean Thợ cào phân

    Tham gia ngày:
    16/6/08
    Bài viết:
    10,892
    Nơi ở:
    Hội Dzườn Đào
    Nes có cái trò đấm box này bỉ vãi =))

     
    Chỉnh sửa cuối: 15/12/21
    Netorare thích bài này.
  20. Backy

    Backy Liu Kang, Champion of Earthrealm CHAMPION ⚜ Duel Master ⚜ Lão Làng GVN

    Tham gia ngày:
    17/4/04
    Bài viết:
    5,420
    Nơi ở:
    Sài gòn
    Xưa chơi NES ở quán gần trường 500đ 1h :-j
     

Chia sẻ trang này