Pikuma - PS1 Programming with MIPS Assembly and C (2024)

  • CategoryOther
  • TypeTutorials
  • LanguageEnglish
  • Total size8.4 GB
  • Uploaded Byborut0
  • Downloads35
  • Last checkedSep. 28th '26
  • Date uploadedSep. 28th '26
  • Seeders 9
  • Leechers14

Infohash : 070E7F6EEDDA3451A6E85BECB0400C77AD412367

Source: https://pikuma.com/courses/ps1-programming-mips-assembly-language
What you'll learn:

This course is a deep dive into the world of PlayStation programming! We'll explore the PS1 hardware, understand its sub-components, and learn how to code games using MIPS assembler & the C programming language. We'll also learn how to use a PS1 SDK library paired with a modern development toolchain to be more productive and push fast polygons out of our console.

We are about to enter the 5th generation of 32-bit consoles. This era brings with it many technology milestones, such as the adoption of CPUs based on RISC architecture and a preference for coding using a high-level language instead of writing games using plain assembly. We will start by learning the basics of MIPS assembly and evolve to use a C compiler with a PS1 SDK to develop our final project.


--------------
Mediainfo

Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : [email protected]
Format settings : CABAC / 4 Ref frames
Format settings, CABAC : Yes
Format settings, Reference frames : 4 frames
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Duration : 12 min 18 s
Bit rate : 1 016 kb/s
Width : 1 920 pixels
Height : 1 080 pixels
Display aspect ratio : 16:9
frame rate mode : Constant
frame rate : 59.940 (60000/1001) FPS
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Bits/(Pixel*frame) : 0.008
Stream size : 89.5 MiB (88%)
Writing library : x264 core 164
Encoding settings : cabac=1 / ref=3 / deblock=1:0:0 / analyse=0x3:0x113 / me=hex / subme=7 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=34 / lookahead_threads=5 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=2 / keyint=250 / keyint_min=25 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=crf / mbtree=1 / crf=26.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / ip_ratio=1.40 / aq=1:1.00
Color range : Limited
Color primaries : BT.709
Transfer characteristics : BT.709
Matrix coefficients : BT.709
Codec configuration box : avcC

Audio
ID : 2
Format : AAC LC
Format/Info : Advanced Audio Codec Low Complexity
Codec ID : mp4a-40-2
Duration : 12 min 18 s
Source duration : 12 min 18 s
Bit rate mode : Constant
Bit rate : 128 kb/s
Channel(s) : 2 channels
Channel layout : L R
Sampling rate : 44.1 kHz
frame rate : 43.066 FPS (1024 SPF)
Compression mode : Lossy
Stream size : 11.3 MiB (11%)
Source stream size : 11.3 MiB (11%)
Default : Yes
Alternate group : 1

Files:

Pikuma - PS1 Programming with MIPS Assembly & C 2024
  • 001. Starting our Journey.mp4 (101.9 MB)
  • 002. How to Take this Course.mp4 (4.3 MB)
  • 003. Placing the PlayStation in History.mp4 (90.9 MB)
  • 004. PS1 Hardware Overview.mp4 (94.3 MB)
  • 005. The MIPS CPU.mp4 (43.1 MB)
  • 006. Memory & Endianness.mp4 (31.0 MB)
  • 007. Memory Map.mp4 (30.7 MB)
  • 008. CPU Registers & Load Instructions.mp4 (81.3 MB)
  • 009. Store, Add, & Subtract Instructions.mp4 (42.2 MB)
  • 010. Jump & Branch Instructions.mp4 (35.1 MB)
  • 011. Exercise Our First MIPS Code.mp4 (18.4 MB)
  • 012. Going Over Our First MIPS Code.mp4 (26.3 MB)
  • 013. Installing the ARMIPS Assembler.mp4 (34.7 MB)
  • 014. Assembling our MIPS Code.mp4 (7.4 MB)
  • 015. PSX-EXE File Format.mp4 (11.6 MB)
  • 016. Emulator & Step-By-Step Execution.mp4 (33.0 MB)
  • 017. Fixing Off-By-One Error.mp4 (10.3 MB)
  • 018. Pseudo-Instructions.mp4 (34.2 MB)
  • 019. The MIPS Pipeline.mp4 (66.2 MB)
  • 020. Some Warm Up Exercises.mp4 (17.4 MB)
  • 021. Solving our Warm Up Exercises.mp4 (43.2 MB)
  • 022. Register Shorthand.mp4 (23.0 MB)
  • 023. Factorial Exercise.mp4 (24.6 MB)
  • 024. Solving our Factorial Exercise.mp4 (40.6 MB)
  • 025. Factorial Subroutine.mp4 (40.0 MB)
  • 026. Negative Numbers.mp4 (40.8 MB)
  • 027. Sign Extension.mp4 (29.9 MB)
  • 028. Logical Instructions.mp4 (28.3 MB)
  • 029. Bitshifting Instructions.mp4 (32.1 MB)
  • 030. Examples of CISC & RISC Machines.mp4 (38.7 MB)
  • 031. CISC vs RISC Instructions.mp4 (82.0 MB)
  • 032. The PlayStation Graphics System.mp4 (77.4 MB)
  • 033. Drawing Primitives.mp4 (36.2 MB)
  • 034. GPU Packets.mp4 (66.2 MB)
  • 035. Sending Display Control Packets to GP1.mp4 (81.5 MB)
  • 036. Sending VRAM Access Packets to GP0.mp4 (33.2 MB)
  • 037. Clear Display Area.mp4 (26.9 MB)
  • 038. Drawing a Flat-Shaded Triangle.mp4 (18.3 MB)
  • 039. Drawing a Flat-Shaded Quad.mp4 (11.8 MB)
  • 040. Drawing a Gouraud-Shaded Triangle.mp4 (9.2 MB)
  • 041. Flat-Shaded Triangle Subroutine.mp4 (49.4 MB)
  • 042. Coding our Flat Triangle Subroutine.mp4 (19.8 MB)
  • 043. Stack & Stack Pointer.mp4 (42.5 MB)
  • 044. Stack Parameters.mp4 (24.5 MB)
  • 045. Stack & Heap Space.mp4 (39.4 MB)
  • 046. Variables.mp4 (43.2 MB)
  • 047. Variable Alignment.mp4 (20.1 MB)
  • 048. Vector Alignment.mp4 (62.6 MB)
  • 049. Copying Image Data to VRAM.mp4 (103.4 MB)
  • 050. Using Bitshifting to Multiply & Divide.mp4 (33.0 MB)
  • 051. 24BPP Display Mode.mp4 (59.1 MB)
  • 052. Taking Advantage of our Delay Slots.mp4 (28.8 MB)
  • 053. Moving from MIPS Assembly to C.mp4 (25.9 MB)
  • 054. Installing Tools on Windows 11.mp4 (46.5 MB)
  • 055. Installing Tools on Windows XP.mp4 (66.8 MB)
  • 056. Compiling a Simple Psy-Q Project.mp4 (34.0 MB)
  • 057. Double-Buffer Screen.mp4 (99.0 MB)
  • 058. Psy-Q Integer Data Types.mp4 (14.2 MB)
  • 059. Psy-Q Primitive Types.mp4 (23.8 MB)
  • 060. Ordering Table & Primitive Buffer.mp4 (61.8 MB)
  • 061. Sorting Primitives into the OT.mp4 (47.9 MB)
  • 062. Sorting a Gouraud Quad into the OT.mp4 (25.1 MB)
  • 063. A Review of Pointers.mp4 (64.5 MB)
  • 064. The Arrow Operator.mp4 (56.5 MB)
  • 065. A Review of 3D Projection.mp4 (68.9 MB)
  • 066. Vertices & Face Indices.mp4 (52.6 MB)
  • 067. The Geometry Transformation Engine.mp4 (19.9 MB)
  • 068. Basic 3D Transformations.mp4 (45.9 MB)
  • 069. RotTransPers Function.mp4 (70.4 MB)
  • 070. Coding a Rotating 3D Cube.mp4 (55.0 MB)
  • 071. Normal Clip.mp4 (26.1 MB)
  • 072. Coding Quads as Cube Faces.mp4 (12.6 MB)
  • 073. Reviewing Floating-Point Numbers.mp4 (51.3 MB)
  • 074. Fixed-Point Numbers.mp4 (48.5 MB)
  • 075. Implementing a Bouncing Cube.mp4 (52.1 MB)
  • 076. Different Transform Matrix per Object.mp4 (60.7 MB)
  • 077. Wait, Can I use Floats.mp4 (6.1 MB)
  • 078. GTE Register Set.mp4 (38.6 MB)
  • 079. Inline GTE Instructions.mp4 (62.9 MB)
  • 080. RTPT vs. RTPS.mp4 (34.4 MB)
  • 081. Reading Joypad State.mp4 (66.0 MB)
  • 082. Joypad Input with BIOS Functions.mp4 (79.9 MB)
  • 083. Joypad Header & Implementation.mp4 (90.4 MB)
  • 084. Header File for OT & Primitive Buffer.mp4 (79.7 MB)
  • 085. Header File for Display Routines.mp4 (25.8 MB)
  • 086. Camera Space.mp4 (54.8 MB)
  • 087. The Look-At Transformation.mp4 (73.9 MB)
  • 088. The LookAt Function.mp4 (66.7 MB)
  • 089. Coding the Look-At Camera Model.mp4 (83.6 MB)
  • 090. CD-ROM Basics.mp4 (65.2 MB)
  • 091. Generating an ISO on Windows XP.mp4 (47.1 MB)
  • 092. Generating an ISO on Windows 11.mp4 (32.7 MB)
  • 093. A Function to Read Files from the CD.mp4 (93.6 MB)
  • 094. Understanding the MODEL.BIN File.mp4 (23.9 MB)
  • 095. Dynamically Allocating Buffers.mp4 (49.8 MB)
  • 096. Heap Initialization on Windows 11.mp4 (24.7 MB)
  • 097. Interpreting Bytes as Numbers.mp4 (72.3 MB)
  • 098. Handling Different Order of Bytes.mp4 (47.1 MB)
  • 099. Reading Vertices & Faces from a File.mp4 (51.2 MB)
  • 100. UV Coordinates, TPAGE, & CLUT.mp4 (61.1 MB)
  • 101. Installing TIM Tool.mp4 (7.6 MB)
  • 102. TIM File Format.mp4 (25.9 MB)
  • 103. Read TIM File from the CD.mp4 (75.6 MB)
  • 104. Textured Cube Faces.mp4 (84.0 MB)
  • 105. Wobbly Textures.mp4 (100.2 MB)
  • 106. Polygon Jitter.mp4 (8.7 MB)
  • 107. Dev Tools CD Samples.mp4 (41.2 MB)
  • 108. Intro to our Final Project.mp4 (80.9 MB)
  • 109. Importing Project Assets.mp4 (9.2 MB)
  • 110. PRM File Layout.mp4 (49.0 MB)
  • 111. Reading Object Name from PRM File.mp4 (55.2 MB)
  • 112. Reading Vertices from PRM File.mp4 (41.3 MB)
  • 113. Handling Different Primitive Types.mp4 (103.0 MB)
  • 114. Reading Primitives from PRM File.mp4 (58.3 MB)
  • Code:

    • udp://tracker-udp.gbitt.info:80/announce
    • udp://tracker.torrent.eu.org:451/announce
    • udp://tracker.qu.ax:6969/announce
    • udp://evan.im:6969/announce
    • udp://tr4ck3r.duckdns.org:6969/announce
    • http://wegkxfcivgx.ydns.eu:80/announce
    • https://t.213891.xyz:443/announce
    • udp://tracker.corpscorp.online:80/announce
    • https://tracker.qingwapt.org:443/announce
    • https://tracker.7471.top:443/announce
    • udp://mail.segso.net:6969/announce
    • udp://tracker.peerfect.org:6969/announce
    • udp://tracker.opentrackr.com:6969/announce
    • udp://tracker.ilibr.org:6969/announce
    • udp://tracker.ducks.party:1984/announce
    • https://1.tracker.eu.org:443/announce
    • udp://opentracker.lain.moscow:6969/announce
    • udp://open.stealth.si:80/announce
    • http://ipv4announce.sktorrent.eu:6969/announce
    • udp://martin-gebhardt.eu:25/announce
    • http://tracker.renfei.net:8080/announce
    • http://bt2.archive.org:6969/announce
    • udp://tracker.aruku.ovh:8081/announce
    • https://tracker.foreverpirates.co:443/announce
    • udp://tracker.nyaa.net:6969/announce
    • udp://tracker.dler.com:6969/announce
    • udp://anime-tracker.aruku.kro.kr:8081/announce
    • udp://open.ftorrent.com:443/announce
    • udp://open.demonii.com:1337/announce
    • udp://t.overflow.biz:6969/announce
    • http://bt1.archive.org:6969/announce
    • udp://tracker.torrents.observer:80/announce
    • udp://torrent.tracker.durukanbal.com:6969/announce
    • http://tracker.waaa.moe:6969/announce
    • udp://tracker.k.vu:6969/announce
    • udp://bittorrent-tracker.e-n-c-r-y-p-t.net:1337/announce
    • udp://tracker.nyaa.vc:6969/announce
    • udp://tracker.farted.net:6969/announce
    • udp://tracker.teambelgium.net:6969/announce
    • udp://tracker.opentrackr.org:1337/announce
    • udp://tracker.cn.nyaa.net:6969/announce
    • http://tracker.dhitechnical.com:6969/announce
    • https://tracker.pmman.tech:443/announce
    • https://tracker.nekomi.cn:443/announce
    • http://tracker.mywaifu.best:6969/announce
    • https://004430.xyz:443/announce
    • udp://tracker.gmi.gd:6969/announce